您的位置:

c语言程序审核,c语言开发流程图

本文目录一览:

C语言程序能否多次使用scanf

可以多次使用,只是你要注意,使用scanf时,回车键也算一次输入,比如你这样

char ch1,ch2;

scanf("%c",ch1);

scanf("%c",ch2);

你键盘输入 a回车,那么ch1==‘a’,ch2==‘10’;//回车键的ASCII码

c语言编写程序,输入某年某月,求该月的天数

#includeiostream.h

void main()

{

  int Year,Month,Day;

  cout "Please enter the current date(年月以空格分隔):";

  cin YearMonth;

  while(Month=0 || Month12 )

   {

        cout"输入时间有误,请重新输入:";

     cin YearMonth;

     }

  switch(Month)

   {

          case 4:

          case 6:

          case 8:

          case 9:

          case 11:

                 Day=30;

       break;

         case 2:

             if(Year%400 == 0 || Year%4==0  nYear%100 != 0)

                 Day=29;

             else

                 Day=28;

      break;

   default: Day=31;

    }

     cout "该月天数为:"  Day "天";

   }

尊敬的审核人员,对于您说的排版不清晰问题做出解释:C语言编辑器的自动排版,不能完全左对齐。

C语言程序设计问题

#include conio.h

#include stdio.h

FILE *fp;

int a[100][10]; /*定义一个二位数组用来存放学生成绩*/

int stu;

inputx()

{

gotoxy(15,13);

textcolor(RED);

printf("请输入你们班的学生数:");

scanf("%d",stu);

}

input() /*输入学生成绩*/

{

int i;

for(i=1;i=stu;i++)

{ scanf("%8d%8d%8d%8d%8d%8d",a[i][1],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6]);

}

}

print1() /*输出成绩表,并求总分,平均分和排名次*/

{

int i,j;

int b[100],c[100];

int t,loc,k;

fp=fopen("成绩表.txt","w");

for(i=1;i=stu;i++) /*求总分和平均分*/

{

a[i][7]=0;

for(j=2;j=6;j++)

a[i][7]=a[i][7]+a[i][j];

a[i][8]=a[i][7]/5;

}

for(i=1;i=stu;i++) /*排名*/

{

b[i]=a[i][7];

c[i]=i;

}

for(i=1;i=stu-1;i++)

{

loc=i;

for(j=i+1;j=stu;j++)

if(b[j]b[loc])

loc=j;

if(loc!=i)

{t=b[i];b[i]=b[loc];b[loc]=t;

t=c[i];c[i]=c[loc];c[loc]=t;

}

}

for(i=1;i=stu;i++)

for(k=1;k=stu;k++)

if(c[k]==i)

{

a[i][9]=k;

break;

}

for(i=1;i=stu;i++) /*输出成绩表*/

{

for(j=1;j=9;j++)

printf("%-6d",a[i][j]);

printf("\n");

}

/*以下输出成绩表存到一个文件中*/

fprintf(fp,"学号 语文 数学 英语 物理 化学 总分 均分 名次\n");

for(i=1;i=stu;i++)

{

for(j=1;j=9;j++)

fprintf(fp,"%-6d",a[i][j]);

fprintf(fp,"\n");

}

}

print2() /*求各科总分和平均分*/

{

int i,j;

int m[3][6];

for(j=2;j=6;j++)

{

m[1][j-1]=0;

for(i=1;i=stu;i++)

m[1][j-1]=m[1][j-1]+a[i][j];

m[2][j-1]=m[1][j-1]/stu;

}

for(i=1;i=2;i++)

{

for(j=1;j=5;j++)

printf("%-6d",m[i][j]);

printf("\n");

}

}

change() /*修改学生成绩*/

{

int m,b,c,i,n=0;

printf("请输入您要修改的学生的学号:");

scanf("%d",m);

printf("1,语文;2,数学;3,英语;4,物理;5,化学;\n");

printf("请选择您要修改的科目:");

scanf("%d",b);

printf("请输入新的学生成绩:");

scanf("%d",c);

for(i=1;i=stu;i++)

if(m!=a[i][1]) n++;

else {

n++;

break;

}

a[n][b+1]=c;

printf("\n重新输出成绩表\n");

printf("学号 语文 数学 英语 物理 化学 总分 均分 名次\n");

print1();

go();

}

go() /*选择菜单*/

{

int n;

printf("\n现在您将会遇到以下几种情况:\n");

printf("1,继续查询;2,修改数据;3,重新运行;4,结束程序;\n");

printf("请您根据需要按键选择:");

scanf("%d",n);

if(n==1)find();

if(n==2)change();

if(n==3)main();

if(n==4){

clrscr();

printf("*********感谢您使用本程序*********\n");

printf("这是我编写的第一个系统程序,为了感谢您的使用,请到3509寝室找李晓锋领奖\n");

printf("\n\n");

printf("再次感谢您的使用\n");

printf("------------ByeBye----------------");

}

getch();

}

find1() /*按名次查询学生成绩*/

{

int n,i;

printf("请输入您要查询的学生的名次:");

scanf("%d",n);

printf("名次 学号 语文 数学 英语 物理 化学 总分 均分\n");

for(i=1;i=stu;i++)

if(n==a[i][9])

{ printf("%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d",a[i][9],a[i][1],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6],a[i][7],a[i][8]);

break;

}

printf("\n");

go();

}

作者: zfy0422 2004-11-10 08:38 回复此发言

--------------------------------------------------------------------------------

2 一个学生成绩管理系统

find2() /*按学号查询学生成绩*/

{

int n,i;

printf("请输入您要查询的学生的学号:");

scanf("%d",n);

printf("学号 语文 数学 英语 物理 化学 总分 均分 名次\n");

for(i=1;i=stu;i++)

if(n==a[i][1])

{ printf("%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d",a[i][1],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6],a[i][7],a[i][8],a[i][9]);

break;

}

printf("\n");

go();

}

find3_1(int n) /*输出科目查询结果*/

{

int i;

printf("学号 名次 语文 数学 英语 物理 化学 总分 均分\n");

for(i=1;i=stu;i++)

if(a[i][n+1]=90)

{ printf("%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d%-6d",a[i][1],a[i][9],a[i][2],a[i][3],a[i][4],a[i][5],a[i][6],a[i][7],a[i][8]);

printf("\n");

}

go();

}

find3() /*科目选择菜单*/

{

int n;

printf("现有以下五种科目供查询:\n");

printf("1,语文;2,数学;3,英语;4,物理;5,化学;\n");

printf("请按键选择:");

scanf("%d",n);

find3_1(n);

}

find() /*查询方式菜单*/

{

int m;

printf("根据您的要求,有以下3种查询方式: \n");

printf("1,按名次查询;\n");

printf("2,按学号查询;\n");

printf("3,查询某科成绩在90分以上的学生的情况;\n");

printf("现在,按照您的需要请按键:");

scanf("%d",m);

if(m==1)find1();

if(m==2)find2();

if(m==3)find3();

}

main() /*主函数运用文本编辑对欢迎界面进行排版*/

{

int i;

clrscr(); /*清屏*/

textcolor(YELLOW);

{

gotoxy(20,9);

printf("******欢迎使用学生成绩管理系统!******\n");

gotoxy(20,11);

printf("------------制作人:赵飞宇------------\n");

gotoxy(20,13);

printf("******欢迎注册:zfy0422@sina.com******\n");

gotoxy(20,15);

printf("***********飞宇软件开发公司***********\n");

gotoxy(20,17);

printf("版权所有 未经同意 不得复制 违者必究");

}

for(i=1;i=44;i++) /*输出用#组成的矩形以达到美观的效果*/

{

{

gotoxy(16+i,19);

printf("#");

}

{

gotoxy(16+i,7);

printf("#");

}

}

for(i=1;i=13;i++)

{

{

gotoxy(16,6+i);

printf("#");

}

{

gotoxy(61,6+i);

printf("#");

}

}

getch();

clrscr();

inputx();

clrscr();

gotoxy(3,3);

printf("\n学生成绩管理系统\n\n");

printf("一,输入成绩\n");

printf("请输入学生的成绩:\n" );

printf("学号 语文 数学 英语 物理 化学\n");

input();

printf("\n");

printf("二,输出成绩表\n");

printf("学号 语文 数学 英语 物理 化学 总分 均分 名次\n");

print1();

printf("\n");

printf("三,输出各科总分及平均分\n");

printf("语文 数学 英语 物理 化学\n");

print2();

printf("\n");

printf("四,查询\n");

find();

}

你认真的看看这个程序后会对你的这个问题有很大的帮助的,本来打算 给你写一个的,但是太多了,另外上面这个程序具有你上述问题所有要求的函数,相信你看懂后,你上面的哪个问题就可以很轻易的解决了。

C语言问题,我的程序运行结果未发现错误,可就是不能通过“对战”平台的审核,详情见补充…

#include stdio.h

int main(){ 

    char v[26]= {1};

    char e[4];

    int n,i;

    scanf("%d",n);

    for(i=0;in;i++){

        scanf("%s", e);

        v[e[0] -'a'] = v[e[2]-'a'];

    }

    bool none = true;

    for(i=0;i26;i++){

        if(v[i]){

            if (none) {

                printf("%c", i + 'a');

            } else {

                printf(" %c", i + 'a');

            }

            none = false;

        }

    }

    if (none) {

        printf("none");

    }

    return 0;

}

我也写了一个,帮我测试一下呵呵

这C语言程序题怎么做?

问题1:

#include stdio.h

#include math.h

void main()

{

int n,temp,i,count = 1;

printf("请输入一个数:");

scanf("%d",n);

temp = n;

while (temp/=10)//统计有多少位

count++;

printf("这个数有%d位\n",count);

printf("顺序为:");

temp = n;

for (i = count;i0;i--)

{

printf("%d\t",temp/(int)pow(10,i-1));

temp -= (temp/(int)pow(10,i-1)*(int)pow(10,i-1));

}

printf("\n倒序为:");

temp = n;

for (i = count;i0;i--)

{

printf("%d\t",temp%10);

temp /= 10;

}

printf("\n");

}

问题2:

#include stdio.h

void main()

{

int letter = 0,number = 0,blank = 0,other = 0,count = 0;

char *s = new char[100];

printf("请输入字符串:");

scanf("%c",s);

while (*(s+count++)!='\n')//因为字符串中需要统计空格,即允许有空格,所以需要这样scanf

{

scanf("%c",s+count);

}

for (int i = 0;icount-1;i++)//逐个字符判断

{

if((*(s+i)='a'*(s+i)='z')||(*(s+i)='A'*(s+i)='Z'))letter++;

else if((*(s+i)='0'*(s+i)='9'))number++;

else if((int)*(s+i) == 32)blank++;

else other++;

}

printf("字母:%d\n数字:%d\n空格:%d\n其他:%d\n",letter,number,blank,other);

}

问题3:

#include stdio.h

void main()

{

int a,b,c;

for(a = 1;a=9;a++)//百位数

for(b = 0;b=9;b++)//十位数

for(c = 0;c=9;c++)//个位数

if((a*100+b*10+c) == (a*a*a+b*b*b+c*c*c))//判断

printf("%d\t",a*100+b*10+c);

}