{ b=6;
printf(“%d”,b); }
printf(“a=%d”,a); }
运行结果为:____4__________________________________________________ 9.main( )
{ int i,max,a[10];
printf(\; for(i=0;i<10;i++) scanf(\; max=a[0];
for(i=1;i<10;i++) if (a[i]>max) max=a[i]; printf(\; }
该程序的功能是: 通过键盘输入10个数,求这10个数中的最大值
五、仔细阅读如下程序,按题意填写程序空缺
1、下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。
int n = 0 , c ; c = getchar ( ) ;
while ( )
{ if ( ) n + + ; c = getchar ( ) ; }
2、下面程序的功能是用do-while语句求1——1000之间满足“用3除余2,用5除余3,用7除余2”的数,且一行只打印5个数。 main()
{int i=1,j=0;
do{if( ){printf(“M”,i); j=j+1;
if( )printf(“\\n”);} i=i+1;}
while(i<1000);}
3、下面程序的功能是打印100以内个位数为6且能被3整除的所有数。 main() {int i,j;
for(i=0;( i<10 );i++) {j=i*10+6;
if( i%3!=0 )countinue; printf(“%d”,j);} }
4.以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入,请填空。
main()
{ float x,amax,amin; scanf(“%f”,&x); amax=x; amin=x;
while(【1】X>0)
{ if (x>amax) amax=x; if(【2】x
scanf(“%f”,&x) 【3】 ; }
printf(“\\nmax=%f min=%f\\n”,amax,amin); }
5.Fibonacci数列中的头两个数是1和1,从第三个数开始,每个数等于前两个数之和。下述程序计算此数列的前20个数,且每行输出5个数,请填空。
#include
{ int f,f1=1,f2=1; int i;
printf(“m,m”,f1,f2); for (i=3;i<=20;i++)
{ f= 【4】f1+f2 ; printf(“m”,f); if(【5】i%5==0)
printf(“\\n”);
f1=f2;
【6】f2=f ; } }
6.下面程序的功能是将两个字符串连接起来,请填空。
#include
{ char s1[80],s2[40]; int i=0,j=0;
printf(“\\nInput string1:”);
scanf(“%s”,s1);
printf(“Input string2:”); scanf(“%s”,s2); while(s1[i]!=‘\\0’)
i++;
while(s2[j]!=‘\\0’)
【7】s1[i++]=s2[i++] ; 【8】s1[i] =‘\\0’;
printf( 【9】”%s”,s1 ); }
7.计算1+1/2+1/4+?+1/50的值,并显示出来。 main()
{ int i=2;
float sum=1.0; while(i<=【10】50)
{ sum += 1.0/【11】i ;
i= 【12】i+2 ; }
printf(“sum=%f\\n”,sum); }
8.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是一个小写字母,则把它变成大写字母;其它字符不变。
main( )
{ char ch;
scanf (“ %c” , &ch );
if ( 【13】ch>’A’&&ch<=’Z’ )
ch = ch + 32 ; else
if ( ch > = ‘a’ && ch < = ‘ z ’)
【14】ch=ch-32 ;
printf ( “ %c” , ch );
}
9.以下程序是用来输入5个整数,并存放在数组中,找出最大数与最小数所在的下标位置,并把二者对调,然后输出调整后的5个数。
#include
{ int a[5],t,i,maxi,mini;
【15】for(i=0;i<5;i++) scanf(“%d”,&a[i]); mini=maxi= 【16】0 ; for(i=1;i<5;i++) {
if( 【17】a[i]a[maxi]) maxi=i;
}
printf(“最小数的位置是:%d\\n”,mini);
printf(“最大数的位置是:%d\\n”,maxi);
t=a[maxi];
【18】a[maxi]=a[mini] ; 【19】a[mini]=t ; printf(“调整后的数为:”); for(i=0;i<5;i++)
printf(“%d”,a[i]);
printf(“\\n”); }
10.下面程序将二维数组a的行和列元素互换后存到另一个二维数组b中,分别输出数组a、b。
main ( )
{ int a[2][3] = {{1,2,3},{4,5,6}}; int b[3][2] , i , j ; printf (“array a:\\n”);
for ( 【20】i=0;i<2;i++ )
{ for ( 【21】j=0;j<3;j++ ) { printf (“]” , a[i][j] ) ;
【22】b[j][i]=a[i][j] ; }
printf (“\\n”) ;
}
printf (“array b:\\n”) ;
for ( 【23】i=0;i<3;i++ )
{ for ( 【24】j=0;j<2;j++ ) printf (“]” ,b[i][j] ) ; 【25】 ; } }
六、编程题
1、从键盘输入一百分制成绩,要求输出成绩等级A、B、C、D、E。其中:90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
2.有三个整数a,b,c,由键盘录入它们的值,编写程序输出最大的数。
3.编程实现通过键盘输入6个整数存放到数组中,使用冒泡排序法对数组中这6个数按由小到大进行排序。 4.编程实现n的阶乘,n值由键盘输入。
5.编程实现1!+2!+??+10!,并输出结果。
1. main() 5.main()
{int a,I; { int sum,fac,i; printf(“input a number:”); sum=0; scanf(“%d”,&a); fac=1;
I=a/10; for(i=0;i<10;i++) switch(I) sum=sum+i; {case 9:printf(“A\\n”);break; fac=fac*i;
case 8:printf(“B\\n”);break; printf(“1!+2!+?.10!\\n”,fac); case 7:printf(“C\\n”);break; } case 6:printf(“D\\n”);break; default:printf(“E\\n”); }
2. main()
{ int a,b,c,max;
printf(“input three unmbers:”); scanf(“%d%d%d”,&a,&b,&c); if(a>b&&a>c)
printf(“max=%d\\n”,a); else