下面程序的功能是用"辗转相除法"求两个正整数的最大公约数。请填空。 #include main() {int r,m,n; scanf("%d%d",&m,&n); if(m 【函数】下面程序的输出是________。 #include
#define MAX 5 int a [ MAX ], k ; void fun1 (); void fun2 (); void fun3 (); main() { fun1 (); fun3 (); fun2 (); fun3 (); printf ( "\n" ); } void fun1 () { for( k =0; k < MAX ; k ++) a [ k ]= k + k ; } void fun2 () { int a [ MAX ], k ; for( k =0; k <5; k ++) a [ k ]= k ; } void fun3 () { int k ; for( k =0; k < MAX ; k ++) printf ( "%d" , a [ k ]); } 【函数】若已定义:int a[10], i;,以下fun函数的功能是:在第一个循环中给前10个数组元素依次赋1、2、3、4、5、6、7、8、9、10;在第二个循环中使a数组前10个元素中的值对称折叠,变成1、2、3、4、5、5、4、3、2、1。请填空。 fun(int a []) { int i ; for( i =1; i <=10; i ++) 【 1 】 = i ; for( i =0; i <5; i ++) 【 2 】 = a [ i ]; } 假设x,y,z,t均为整型变量,则执行以下语句后t的值是__________。 x=y=z=1; t=!x || y && (--z); 若有语句"printf("%0.2f", 23.528);",则输出为___________。 若有定义“int a=1, b=0;”,则表++a*--a == b?'A':15%4的值是______。 以下程序 计算圆的周长、面积和球的体积,填空将其补充完整: #include< stdio.h> 【 1 】 main() { float l , r , s , v ; printf ( "input a radus: " ); scanf ( "%f " , 【 2 】 ); l =2.0*PI* r ; s =PI* r * r ; v =4.0/3*( 【 3 】 ); printf ( "l=%.4f\n s=%.4f\n v=%.4f\n" , l , s , v ); } 假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。请填空。 a+=______; b=a-______; a-=______; 【函数】下面程序的运行结果是________。 #include< stdio.h> long fib(int g ) { switch( g ) { case 0:return 0; case 1:case 2:return(1); } return (fib( g -1)+fib( g -2)); } main() { long k ; k =fib(5); printf ( "%d\n" , k ); } 下面程序以每行4个数据的形式输出a数组,请填空把代码补充完整。 #include< stdio.h> #define N 20 int main() { int a [ N ], I ; for{ I =0; I < N ; I ++} scanf ( "%d" ,_____); for( I =0; I < N ; I ++) { if(_______) _______; printf ( "%3d" , a [ I ]); } printf ( "\n" ); return 0; } 通过函数y=4+|x|计算函数值的if语句是_______。 假设printf输出整数按照2个字节输出,则以下的输出结果是______。 main() { short i; i=-4; printf("i:dec=%d,oct=%o,hex=%x,unsigned=%u\n",i,i,i,i); } 以下程序的功能是根据输入的数据n和运算的类型t实现摄氏度和华氏度的转换。如果输入运算类型四“f”或“F”, 则将华氏度转换成摄氏度,公式为“摄氏度=5*(华氏度-32)/9”,如果输入的运算类型是“c”或“C”,则将摄氏温度转换成为华氏温度。请填空。 #include
main(){ float n, result; char t; scanf( " %c %f " , &t, &n); if (_____________________ _ ) { result = 5 *( n- 32 )/ 9 ; printf ( "the result is %f \n" , result); } else if (______________________ _ ) { _____________________ _ ; printf ( "the result is %f \n" , result); } else { printf ( "Input error. \n" ); } } 【指针】执行以下程序后,a的值为 【1】 , b的值为 【2】 。 #include
main() { int a, b,k = 4 , m = 6 , * p = & k, * q = & m; a = p == & m; b = ( -* p) / ( * q) + 7 ; printf( "a=%d \n " ,a); printf( "b=%d \n " ,b); } 假设a为整型变量,则表6%3||5&&(a=8)的值是_______。 以下程序运行后的输出结果是 __________ 。 #include
int main() { int i, a; for (i= 1 ; i<= 15 ; i+= 2 ) { a=i; if (++a %2 == 0 ) { if ( a++ %3 == 0 ) printf ( " %d " , i); } } return 0 ; } 以下程序的功能是从键盘输入一个年份year(4位十进制数),判断其是否闰年。闰年的条件是:能被4整除,但是不能被100整除;或者能被400整除。请填空。 #include
main(){ int year, leap= 0 ; printf ( "Please input the year: " ); scanf( " %d " ,&year); if (year %400 == 0 ) leap= 1 ; else if (______________________________ _ ) leap= 1 ; else _____________________ _ ; if (__________________ _ ) printf ( " %d is a leap year\n" , year); else printf ( " %d is not a leap year.\n" , year); } 若有定义"int x = 5;", 则表x += x -= x *=x 的计算结果为___________。 若有定义"float a=1.5, b=3.5, c=5.2;" 则表(a>=b && c!=b) || (!a && c-b) 的计算结果为___________。 【函数】下面程序的输出结果是________。 void fun() { static int a =0; a +=2; printf ( "%d" , a ); } main() { int cc ; for( cc =1; cc <4; cc ++)fun(); printf ( "\n" ); } 以下程序运行后的输出结果是____________。 #include
int main(){ int x = 1 , y = 2 , t; t= x > y ?++ x :++ y ; printf ( " %d , %d , %d " , x , y , t); return 0 ; } 表12/5+(int)(3.2*(8.2-2))/(int)(1.2+0.85)的值的数据类型为___________。 ______________________________________________________________ 下面程序的输出结果是_______。 #include< stdio.h> int f( ) { static int i =0; int s =1; s += i ; i ++; return s ; } main() { int i , a =0; for( i =0; i <5; i ++) a +=f(); printf ( "%d\n" , a ); } 下面程序的功能是在三个字符串中找出最小的,请填空将代码补充完整: #include
#include
main() { char s[ 20 ], str[ 3 ][ 20 ]; int i; for (i = 0 ; i < 3 ; i++)gets(str[i]); strcpy (s, _______); if ( strcmp (str[ 2 ], s) < 0 ) strcpy (s, str[ 2 ]); printf ( "%s\n" , ______); } 【函数】下面程序的功能是找出三个字符串中最大串,填空完善程序。 【 1 】 #include< stdio.h> main() { int i ;char string [20], str [3][20]; for( i =0; i <3; i ++) gets ( 【 2 】 ); if( strcmp ( str [0], str [1])>0) strcpy ( string , str [0]); else strcpy ( string , str [1]); if( strcmp ( str [2], string )> 【 3 】 ) strcpy ( string , str [2]); printf ( "the largest string is\n%s\n" , string ); } 【函数】下面程序的输出是________。 #include
unsignedfun6( unsigned num ) { unsigned k =1; do { k *= num %10; num /=10; } while( num ); return( k ); } main() { unsigned n =26; printf ( "%d\n" , fun6( n )); } 以下程序的功能是求某整数的所有因子之和。请填空。 #include
int main() { int i, x , s = 0 ; scanf( " %d " , & x ); for ( i= 1 ; ____ _ ; i++) if ( x %i == 0 ) { s = s +i; _______________ _ ; } printf ( " %d " , s ); return 0 ; } 运行一下程序后,输出结果是___________。 main() { int a, b; a = a+b; printf("%d\n",a); } 某商场根据购物金额采用打折的方式销售商品。以下程序的功能是计算购物金额。请填空。 顾客购物的折扣率如下: 购物金额≤500元,不打折; 500≤购物金额≤1000元,9折; 1000 若有定义: struct num {int a; int b; float f; }n={1,3,5.0}; struct num *pn=&n; 则表pn->b/n.a*++pn->b的值是________,表(*pn).a+pn->f的值是_____。 若有定义“int a=2,b=0;”,则表a--b++?'1':'2'的值是______。 【数组】以下程序分别在a数组和b数组中放入an+1和bn+1个由小到大的有序数,程序把两个数组中的数按由小到大的顺序归并到c数组中。请填空。 #include< stdio.h> main() { int a [10]={1,2,5,8,9,10}, an =5, b [10]={1,3,4,8,12,18}, bn =5; int i , j , k , c [20], max =9999; a [ an +1]= b [ bn +1]= max ; i = j = k =0; while(( a [ i ]!= max )||( b [ j ]!= max )) if( a [ i ]< b [ j ]) { c [ k ]= 【 1 】 ; k ++; 【 2 】 ;} else { c [ k ]= 【 3 】 ; k ++; 【 4 】 ;} for( i =0; i < k ; i ++) printf ( "%4d" , c [ i ]); printf ( "\n" ); } 下面程序的功能是输入一个数n,判断它是否能被5或9整除。若能整除,则输出YES;否则输出NO。请填空。 #include
main(){ int n; printf ( "Please input n: " ); scanf( " %d " ,&n); if (________________ _ ) printf ( "n = %d YES\n" , n); else printf ( "n = %d NO\n" , n); } 以下程序的功能是:从键盘输入的若干整数中,分别统计正整数和负整数的个数, 用 0 结束输入操作。请填空。 #include
int main() { int a, n1= 0 , n2= 0 ; scanf( " %d " , &a); while ( ________ _ ) { if (a> 0 ) n1++; if (a< 0 ) n2++; ____________________ _ ; } printf ( " %d , %d \n" ,n1,n2); return 0 ; } 【数组】 下面程序完成功能是:判定用户输入的正整数是否为“回文数”,所谓“回文数”是指正读反读都相同的数。请填空。 #include< stdio.h> main() { int buffer [10], i , k , flag ; long number , n ; printf ( "please input one number" ); scanf ( "%ld" ,& number ); k =0; n = number ; do { 【 1 】 ; k = k +1; n = n /10; }while ( n !=0); flag =1; for( i =0; i <=( k -1)/2; i ++) if ( 【 2 】 ) flag =0; if( flag ) printf ( "%ld is huiwenshu\n" , number ); else printf ( "%ld is not huiwenshu\n" , number ); } 下面程序段的运行结果是__________。 i=1;s=3; do{s+=i++; if(s%7==0)continue; else ++i; }while(s<15); printf("%d",i); 以下程序运行后的输出结果是 _________________ 。 #include
int main() { int x = 1 , sum = 0 ; while ( sum < 50 ) { sum += x; x++; if ( sum % 7 == 0 || x >= 5 ) break ; } printf( "%d, %d\n" , sum , x); return 0 ; } 以下程序的功能是输入一个数, 判断该数是否能被3整除而且个位数是5。请填空 #include
main() { int x , s ; printf ( "Input a number:\n" ); scanf( " %d " , & x ); s = x %10 ; if (________________ _ ) { printf ( " %d yes\n" , x ); } else { printf ( " %d no\n" , x ); } } 结构数组中存有三人的姓名和年龄,以下程序输出三人中最年长者的姓名和年龄。请在下划线上填入正确内容。 static struct man{ char name[20]; int age; }person[]={"li=ming",18, "wang-hua",19, "zhang-ping",20 }; main() {struct man *p,*q; int old=0; p=person; for( ;p_____;) if(oldage) {q=p;______;} printf("%s %d",______); } 下面的程序 计算圆的周长、面积和球的体积,请填空将其补充完整。 #include< stdio.h> #define PI 3.1415926 #define 【 1 】 L=2*PI*R; 【 2 】 ; main() { float r , l , s , v ; printf ( "input a radus: " ); scanf ( "%f" , & r ); CIRCLE( r , l , s , v ); printf ( "r=%.2f\n l=%.2f\n s=%.2f\nv=%.2f\n" , 【 3 】 ); } 【函数】下面pi函数的功能是,根据以下公式返回满足精度e要求的p的值。根据以下算法补足所缺语句。 doublepi(double eps ) { double s =0.0, t =1.0; int n ; for( 【 1 】 ; t > eps ; n ++) { s += t ; t = n * t /(2* n +1); } return(2.0* 【 2 】 ); } 将数学表: 根号(x×x+y×y/xy)改写成C语言表为_____________。 以下程序运行后的输出结果是 __________ 。 #include
int main() { int k= 0 ; while (k== 0 ) k--; printf ( "k= %d \n" ,k); return 0 ; } 以下程序的运行结果是___________。 int a=5;int b=7; main() { int a=4,b=5,c; c=plus(a,b); printf("A+B=%d\n",c); } plus(int x,int y) {int z; z=x+y; return(x); } 【指针】当运行以下,从键盘输入6↙,则下面程序的运行结果是________。 #include "stdio.h" #include "string.h" main() { char s []= "97531" , c ; c = getchar (); f( s , c ); puts ( s ); } f(char* t ,char ch ) { while (*( t ++)!= '\0' ); while(*( t -1)< ch ) *( t --)=*( t -1); *( t --)= ch ; } 【函数】下面程序根据对x的输入,求1到x的累加和。请填空将程序补充完整。 #include< stdio.h> float fun(int n ) { int i ; float c ; 【 1 】 ; for( i =1; i <= n ; i ++) c += i ; 【 2 】 ; } main() { int x ; scanf ( "%d" , 【 3 】 ); printf ( "%f\n" ,fun( x )); } 若a是int型变量,则计算下面表后a的值为______。 a=25/3%3 【函数】读下面的程序,填空完善程序。 #include< stdio.h> main() { int a , b , c ; scanf ( "%d%d" , 【 1 】 ); c = 【 2 】 ( a , b ); printf ( "a=%d,b=%d,c=%d\n" , a , b , c ); } int max ( x , y ) 【 3 】 ; { int z ; if( x > y ) z = x ; else z = y ; 【 4 】 ; } 下列程序执行后的输出结果是(保留一位小数)_______。 main() { double d; float f; long l; int i; i=f=l=d=20/3; printf("%d %d %f %f\n",i,l,f,d); } 以下程序运行后的输出结果是__________________。 #include
main() { int x = 0 , s = 0 ; if (! x != 0 ) s += ++ x ; printf ( " %d " , s ); } 【数组】以下程序以每一行输出4个数据的形式输出a数组。请填空。 #include< stdio.h> main() { int a [20], i ; for( i =0; i <20; i ++) scanf ( "%d" , 【 1 】 ); for( i =0; i <20; i ++) { if ( 【 2 】 ) 【 3 】 ; printf ( "%3d" , a [ i ]); } printf ( "\n" ); } 以下程序的功能是随即产生一个3位正整数, 判断该数是否是水仙花数, 所谓水仙花数是该数的各位数字的立方和等于该正整数。请填空。 #include
main() { int num, h, t, s , sum; _______________________ _ ; printf ( " %d \n" , num); s =num %10 ; ________________________ _ ; h=num/ 100 ; if (___