写出程序运行结果和编程题
c语言试题及答案

c语言试题及答案c语言试题及答案C语言是一门通用计算机编程语言,应用广泛。
小编收集了c语言试题及答案,欢迎阅读。
c语言试题一选择题(7分,每小题0.5分)1.C语言源程序的基本单位是( )。
A 过程B 函数C 子程序D 标识符2.下列程序的输出结果是( )。
main( ){ int a=7,b=5;printf("%d ",b=b/a);}A 5B 1C 0 D不确定值3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是( )。
A 7B 8C 9D 24.设a为int型变量,执行下列赋值语句后,a的取值分别是( )。
a=125.534; a=(int)125.521%4; a=5<<2;A 125,31,1B 125,1,20C 125,31,20D 125.534,2,205.设有如下程序段,下面描述中正确的是 ( )。
int k=10; while(k=0) k=k-1;A 循环执行一次 B循环是无限循环 C循环体语句一次也不执行 D 循环体语句执行一次6.以下程序的输出结果为( )。
int i;void prt( ){ for(i=5;i<8;i++) printf("%c",'*');printf(" ");}main( ){ for(i=5;i<=8;i++) prt( );}A ***B *** *** *** ***C *** ***D * * *7.在C语言程序中,以下说法正确的是( )。
A函数的定义可以嵌套,但函数的调用不可以嵌套B函数的定义不可以嵌套,但函数的调用可以嵌套C函数的定义和函数的调用都不可以嵌套D函数的定义和函数的调用都可以嵌套8.以下函数调用语句中含有( )个实参。
func((e1,e2),(e3,e4,e5));A 2B 3C 5D 语法错误9.以下程序的输出结果为( )。
C语言上机练习题

1。
阅读以下程序,说出其功能和运算结果。
#include 〈stdio.h〉int main( ){int n ;int factorial(int n);scanf(”%d”,&n) ;printf(”%d\n",factorial(n)) ;return 0 ;}int factorial(int n){int i, fact=1 ;for(i=1;i<=n;i++)fact=fact*i ;return fact ;}若输入5↙2.改正下列程序中的错误,在屏幕上显示“Welcome to You!”.#include <stdio.h〉int mian( ){printf(”Welcome to You!\n”)return 0 ;}3.若输入4,程序运行结果为【1 】,若输入-4,运行结果为【2 】,若输入10,运行结果为【3 】.#include〈stdio.h〉main(){i nt x,y;scanf(”%d",&x);if(x〈1){y=x;printf("x=%d,y=x=%d\n”,x,y);}else if(x<10){y=2*x-1;printf(”x=%d,y=2*x—1=%d\n",x,y);}else{y=3*x-11;printf(”x=%d,y=3*x—11=%d\n”,x,y);}}4.当输入19,2,21时下列程序运行的结果是()。
#include<stdio。
h>main(){int a,b,c,max;printf(”please scan three number a,b,c:\n");scanf(”%d,%d,%d”,&a,&b,&c);max=a;if(max<b)max=b;if(max〈c)max=c;printf("max is:%d”,max);}5. 运行以下程序时,从键盘键入China#<CR〉(〈CR〉代表回车),则下面程序的运行结果是。
c练习题(1)

1.下面是一个加法程序,程序运行时等待拥护从键盘输入两整数,然后求出它们的和并输出之。
观察运行结果(程序输出),上机验证该程序。
#include <stdio.h>void main(){int a,b,c;printf(“Please input a,b;”);scanf(“%d,%d”,&a,&b);c=a+b;printf(“%d+%d=%d\n”,a,b,c);}2.下面的程序用来求三个数的平均值,上机验证该程序。
main(){float a,b,c,average;printf(“Please input a b c:”);scanf(“%f%f%f”,&a,&b,&c);average=(a+b+c)/3;printf(“The average value is :%f\n”,average);}练习题C语言基本语法知识一、选择题(1)以下叙述中错误的是A)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识(2)以下叙述中错误的是A)C语句必须以分号结束B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行D)赋值表达式末尾加分号就构成赋值语句(3)以下能正确定义且赋初值的语句是A)int n1=n2=10; B)char c=32;C)float f=f+1.1; D)double x=12.3E2.5;(4)设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是A)k=k>=kB)-k++C)k%int(f) D)k>=f>=m(5)有以下程序段int k=0,a=1,b=2,c=3; k=ac ? c:k;执行该程序段后,k的值是A)3 B)2 C)1 D)0(6)以下选项中可作为C语言合法常量的是A)-80.B)-080C)-8e1.0D)-80.0e(7).以下不能定义为用户标识符的是A)MainB)_0C)_intD)sizeof(8)以下选项中,不能作为合法常量的是A)1.234e04 B)1.234e0.4C)1.234e+4 D)1.234e09)有以下程序main(){int m=12,n=34;printf("%d%d",m++,++n); 12 35 m=13 printf("%d%d\n",n++,++m); 35 14}程序运行后的输出结果是A)12353514 B)12353513C)12343514 D)12343513(10)有以下程序main(){int m=3,n=4,x;x=-m++; x= 3 m =4x=x+8/++n; x= 3+8/4= 5printf("%d\n",x);}程序运行后的输出结果是A) 3 B) 5 C) -1 D) -2(11)以下符合C语言语法的实型常量是A) 1.2E0.5B) 3.14.159EC) .5E-3D) E15(12) 若以下选项中的变量已正确定义,则正确的赋值语句是A) x1=26.8%3B) 1+2=x2C) x3=0x12D) x4=1+2=3;(13) 设有以下定义int a=0;double b=1.25;char c=‟A‟;#define d 2则下面语句中错误的是A) a++; B) b++ C) c++; D) d++;实验二整型、浮点型、字符型数据使用1.编程序,输出如下图形:*********************#include <stdio.h>int main(){int i;int j;for(i=1;i<=5;i++){for(j = 1;j<=i;j++){printf("*");}printf("\n");}}2.编写程序,实现下面的输出格式和结果:a= 5,b= 7,a-b=-2,a/b= 71%c1=COMPUTER,c2=COMP ,c3= COMPx=31.19,y= -31.2,z=31.1900s=3.11900e+001,t= -3.12e+001#include <stdio.h>int main(){int a = 5;int b = 7;printf("%d\n",a-b);printf("%2.0f%%\n",(float)a/b*100);char c1[] = "COMPUTER",c2[]="COMP",c3[]="COMP";printf("%s %s %s\n",c1,c2,c3);float x = 31.19,y=-31.2,z=31.1900;printf("%5.2f %4.1f %7.4f",x,y,z);}3.编写程序,输入变量x值,输出变量y的值,并分析输出结果。
C语言——顺序结构程序设计练习题

顺序结构程序设计习题一、选择题:(以下各题□代表空格。
)1.以下程序运行的结果是:#include <stdio.h>int main(){int m=5,n=10;printf(“%d,%d\n”,m++,--n);}A)5,9 B)6,9 C)5,10 D)6,102.以下程序运行的结果是:#include <stdio.h>int main(){int a=201,b=012;printf(“%2d,%2d\n”,a,b);return 0}A)01,12 B)201,10 C)01,10 D)20,013.有定义语句int a,b;若要通过语句scanf(“%d,%d,”&a,&b);使变量a得到数值6,变量b得到数值5,下面输入形式,错误的是:A)6,5<回车> B)6,□□<回车>C)6 5<回车> D)6,<回车>5<回车>4.设有如下程序:#include <stdio.h>int main(){char ch1=’A’,ch2=’a’;printf”%c\n”,(ch1,ch2));return 0;}则以下叙述正确的是:A)程序的输出结果为大写字母A;B)程序的输出结果为小写字母a;C)运行时产生错误信息;D)格式说明符的个数少于输出项个数,编译出错。
5.以下程序运行的结果是:#include <stdio.h>int main(){int x1=0xabc,x2=oxdef;x2-=x1;printf(“%X\n”,x2);return 0;}A)ABC B)0XABC C)0X333 D)3336.以下程序输出的结果是:#include <stdio.h>int main(){ printf(“\n*s1=%15s*”,”chinabeijing”);printf(“\n*s2=%-5s*”,”chi”);}A)*s1=chinabeijing□□□*S2=**chi*B)*s1=chinabeijing□□□**s2=chi□□*C)*s1=*□□chinabeijing**s2=□□chi*D)*s1=□□□chinabeijing**s2=chi□□*7.已有定义int a=-2;和输出语句:printf(“%8lx”,a);以下正确的描述是:A)整形变量的输出格式符只有%d一种;B)%x是格式符的一种,它可以适应与任何一种类型的数据;C)%x是格式符的一种,其变量的值按十六进制输出,但%8lx是错误的D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度。
CC++程序设计课后答案

第一章一、选择题1.C/C++规定.在一个源程序中.main()函数的位置()。
CA.必须在最开始B.必须在最后C.可以任意D.必须在系统调用的库函数的后面2.以下()是C/C++合法的标识符。
A3.下面的程序.对于输入:2 9 15.输出的结果是()。
B#include"iostream.h"void main(){int a;float b;cout<<"input a,b:"<<endl;cin>>a>>b;cout<<"a+b="<<a+b<<endl;}A.2B.11C. 26D.244. 在Visual C++中.打开一个项目只需要打开对应的项目工作区文件即可.项目工作区文件的扩展名为()。
CA.objB.dspC.dswD.cpp5.下面关于C语言与C++关系的说法中.()是正确的。
DA.C语言是C++的子集B.C++对C语言进行了改进C.C++和C语言都是面向对象的D.C++继承了C语言的众多优点6.设置一个断点的方法是将光标移到需要设置断点的行上.然后按()键。
AA.F9B.F10C.F11D.F127.下面关于编译预处理命令的说法中.正确的是()。
CA.一条文件包含命令能包含多个文件B.文件包含命令不可以嵌套使用C.编译预处理命令是在编译之前被处理的命令D.编译预处理命令中的“#”可以省略8.使用()可以设置数据输出的宽度。
BA.setbase(int n)B.setw(int n)C.setfill(int n)D.setprecision(int n)二、填空题1.C/C++程序是由一个或多个函数组成的.但必须要有一个()函数.程序从这个函数开始运行的。
main()2.C/C++字符集包括大、小写英文字母、()、()和包括运算符在内的特殊字符.程序中出现字符集以外的字符就是一个语法错误。
写出程序运行结果和编程题03格式

写出程序运行结果1、下面程序的运行结果是:________void swap1(int c[]){ int t;t=c[0];c[0]=c[1];c[1]=t;}void swap2(int c0,int c1){ int t;t=c0;c0=c1;c1=t;}main( ){ int a[2]={2,4},b[2]={3,5};swap1(a); swap2(b[0],b[1]);printf(“%d %d %d %d\n”,a[0],a[1],b[0],b[1]); }2、下面程序的运行结果是:_____________main(){int a=2,ifor(i=0;i<3;i++)printf("%4d",ff(a));}ff(int a){int b=0;static int c=3;b++;c++;return(a+b+c);}3、下面程序的运行结果是:________main(){int i,j,k=10;for(i=0;i<2;i++){k++;{int k=0;for(j=0;j<=3;j++){if(j%2)continue;k++;}}k++;}printf("k=%d\n",k);}4、下面程序的运行结果:_________。
main(){int a,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(-*p1)/(*p2)+7;printf("a=%d,",a);printf("b=%d\n",b);}5、以下程序运行结果:________。
funa(int a){int b=0;static int c=0;a=c++,b++;return (a);main(){int a=2,i,k;for(i=0;i<2;i++)k=fun(a++);printf("%d\n",k);}6、下面程序的运行结果:_____________struct stu{int num;char name[10];int age;}void fun(struct stu *p){printf("%s\n",(*p).name);}main(){struct stu students[3]={{2010,"zhang",20},{2011,"wang",19},{2012,"zhao",18};fun(students+2);}7、下面程序的运行结果是:_________。
练习3及答案

选择第7题C
选择第8题D
选择第9题A
选择第10题A
选择第11题B
选择第12题B
二、填空题答案
填空第1题protected;default;public
填空第2题Object
填空第3题ng.Character;ng.Boolean
填空第4题
What a pleasure!
void foo(double d,final float f){
String s;
final boolean b;
class Inner{
void methodInner(){
System.out.println("in the Inner");
}
}
}
public static void main(String args[])
{
Outer1 me=new Outer1();
me.foo(123,123);
System.out.println("outer");
}
}
A in the Inner outer
B outer
C in the Inner
D编译不通过
二、填空题
1.Java中类成员的限定词有以下几种:private, public,_____________,_____________。其中,_____________的限定的范围最大。
SimpleDateFormat formatter = new SimpleDateFormat ("yyyy.MM.dd G 'at' hh:mmTime = new Date();
try {
c语言试题和答案

《C语言》课程综合复习资料一、单选题1. 在C语言中,字符型数据在内存中的存储形式是A)原码B)补码C)反码D)ASCII码2. 在C语言中,十进制数47可等价地表示为A) 2f B) 02f C) 57 D) 0573. 设有定义:int x=12,n=5; 则表达式x%=(n%2) 的值为A) 0 B) 1 C) 2 D) 34. 设有定义语句:char str[][20]={,"Beijing","中国石油大学"},*p=str;则printf("%d\n",strlen(p+20)); 输出结果是A)10 B)6 C)0 D)205. 已定义以下函数: fun(int *p){ return *p; }该函数的返回值是A)不确定的值B)形参p所指存储单元中的值C)形参p中存放的值D)形参p的地址值6. C语言中,函数返回值的类型是由A)return语句中的表达式类型决定B)调用函数的主调函数类型决定C)调用函数时的临时类型决定D)定义函数时所指定的函数类型决定7. 有以下函数定义:void fun( int n , double x ) { …… }若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是A)fun( int y , double m );B)k=fun( 10 , 12.5 );C)fun( 10 , 12.5 );D)void fun( 10 , 12.5 );8. 以下选项中不能正确赋值的是A)char b[]={′H′,′e′,′l′,′l′,′o′,′!′};B)char b[10];b="Hello!";C)char b[10]= "Hello!";D)char *str="Hello!";9. 若有以下定义:char s[20]= "programming",*ps=s;则不能代表字符g的表达式是A)ps+3 B)s[3] C)ps[3] D)ps+=3,*ps10. 当对两个字符串进行比较时,应该使用的函数是A)strcat B)strcmp C)strcpy D)strlen11. 若i为整型变量,则以下循环的次数是for(i=2;i==0;)printf(“%d”,i--);A)无限次B)0次C)1次D)2次12. 以下关于数组的描述正确的是A)数组大小固定,但是可以有不同类型的数组元素B)数组大小可变,但是所有数组元素的类型必须相同C)数组大小固定,所有元素的类型必须相同D)数组大小可变,可以有不同类型的数组元素13. 以下能正确定义数组并正确赋初值的语句是A)int N=5,b[N][N]; B)int a[1][2]={{1},{3}};C)int c[2][]= {{1,2},{3,4}}; D)int d[3][2]={{1,2},{34}};14. 设有定义int a[ ]={1,5,7,9,11,13}, *p=a+3; 则*(p-2) , *(a+4) 的值是A)5 11B)1 9 C)5 9 D)有错误15. 已知char b[5],*p=b; ,则正确的赋值语句是A)b=“abcd” ; B)*b=“abcd”; C)p=“abcd”; D)*p=“abcd”;16. 用数组名作为函数调用时的实参,则实际传递给形参的是A)数组的第一个元素值B)数组中全部元素值C)数组的首地址D)数组的元素个数17. 以下叙述中不正确的是A)在不同的函数中可以使用相同名字的变量B)函数中的形式参数是局部变量C)在一个函数内定义的变量只在本函数范围内有效D)在一个函数内的复合语句中定义的变量在本函数范围内有效18. 当对两个字符串进行比较时,应该使用的函数是A)strcat B)strcmp C)strcpy D)strlen19. 有如下定义:long m;char c;float x;double y;则表达式c+m*x/y的值的类型是A)long B)char C)float D)double20. 假设已定义char c[8]= "test";int i;则下面的输出函数调用中错误的是A)printf("%s",c);B)for(i=0;i<8;i++) printf("%c",c[i]);C)puts(c) D)for(i=0;i<8;i++) puts(c[i]);21. 若有以下定义:char s[20]= "programming",*ps=s;则不能代表字符g的表达式是A)ps+3 B)s[3] C)ps[3] D)ps+=3,*ps22. 以下选项中不能正确赋值的是A)char b[]={′H′,′e′,′l′,′l′,′o′,′!′};B)char b[10];b="Hello!";C)char b[10]= "Hello!";D)char *str="Hello!";23. 有以下函数定义:void fun( int n , double x ) { ……}若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是_________。
C语言全部章节习题集(参考答案)

选择结构答案
一、单项选择题
1.B 2.A 3.D 4.C 5.D 6.B 7.C
二、填空题
1. 5 5 4
5 5 4
3 3 4
2. 4 0
3. VeryGood
Good
VeryGood
A. 8 B. 4 C. 2 D. 出错
14、设a=1,b=2,c=3,d=4,则表达式:a<b? a : c<d? a : d的结果为( D )。
A. 4 B. 3 C. 2 D. 1
15、设a 为整型变量,不能正确表达数学关系:10<a<15的 C 语言表达式是( A )。
{ float a,b,temp;
printf("input a and b:");
scanf("%d,%d",&a ,&b);
temp = a; a = b; b = temp;
printf("a=%d , b=%d\n", a , b);
scanf(“%f”,&t);
if(t>=90) ch=’A’;
else if(t>=80) ch=’B’;
24、下列不正确的转义字符是( C )。
A. \\ B. \' C. 074 D. \0
二、填空题:
1、C 语言中的逻辑值“真”是用 1 表示的,逻辑值“假”是用 0 表示的。
2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为 0 。
5、判断变量 a、b 的值均不为 0 的逻辑表达式为a!=0&&b!=0 。
C语言程序设计题库二

C 语言程序设计题库二1、写出下面函数的运行结果。
#include<stdio.h>void fx701(int k,int n,float a);int main(){int k=1,n=5;float a=3.2,b=8.5;printf(" 调用前:k=%d n=%d a=%.2f b=%.2f\n",k,n,a,b);fx701(k,n,a);printf(" 调用后:k=%d n=%d a=%.2f b=%.2f\n",k,n,a,b);return 0;}void fx701(int k,int n,float a){int q=100;float b,x=6.2;k+=q; n*=q; a-=x; b=3.5*a;printf(" 函数中:k=%d n=%d a=%.2f b=%.2f\n",k,n,a,b);}解:调用前:k=1 n=5 a=3.20 b=8.50函数中:k=101 n=500 a=-3.00 b=-10.50调用后:k=1 n=5 a=3.20 b=8.50 2、编写一个函数,实现从键盘输入一个整数,如果该整数为素数,则返回否则返回0。
1,解:#include<stdlib.h>#include<stdio.h>int Is_prime(int i){int j=0;for(j=2;j<i;j++){if(0==(i%j)){return 0;}}return 1;}int main(){int i;printf("Please input a number:"); scanf("%d",&i);if(1==Is_prime(i)){printf("%d is a prime.\n",i);}elseprintf("%d is not a prime.\n",i); system("pause");return 0;程序运行结果如下:Please in put a nu mber:1 /13 is a prime.Please in put a nu mbe8 /8 is not a prime.3、设计两个函数,分别求矩形的周长和面积,并在主函数中调用这两个函数解:#include<stdio.h>float area(float a,float b){float s;s=a*b;return(s);}float zc(float a,float b){float p;p=2*(a+b);return(p);}int main(){float a,b,s,p;printf(" 请输入长方形的边长a,b:");scanf("%f%f",&a,&b);s=area(a,b);p=zc(a,b);printf("长方形的周长为p=%f,长方形的面积为s=%f",p,s);m~n 要求程序运行情况如下:请输入长方形的边长a,b:3 4/长方形的周长为p=14.000000长方形的面积为s=12.0000004、 编写一个函数求一个整数n 的阶乘,在主函数中计算并输出10!的值。
C语言程序设计习题集及解答

目录第一章C语言基础知识 (1)第二章C语言程序设计的初步知识 (2)第二章答案 (25)第三章顺序结构程序设计 (3)第四章选择结构程序设计 (4)第五章循环结构程序设计 (6)第六章数组 (7)第六章答案 (26)第七章函数 (9)第七章答案 (27)第八章指针 (12)第八章答案 (28)第九章结构体与共用体 (14)第九章答案 (28)第十章文件 (16)第十章答案 (29)模拟试题 (17)模拟试题答案 (25)第一章C语言基础知识考点:1.C语言的特点。
2.C语言的基本结构、字符集、标识符、关键字。
3.算法的概念和描述方法。
一、选择题1. A 是C程序的基本构成单位。
A)函数B) 函数和过程C) 超文本过程D) 子程序2.下列说法正确的是 C 。
A)一个函数的函数体必须要有变量定义和执行部分,二者缺一不可B)一个函数的函数体必须要有执行部分,可以没有变量定义C)一个函数的函数体可以没有变量定义和执行部分,函数可以是空函数D)以上都不对3.下列说法正确的是C。
A)在执行C程序时不是从mian函数开始的B)C程序书写格式严格限制,一行内必须写一个语句C)C程序书写格式自由,一个语句可以分写在多行上D)C程序书写格式严格限制,一行内必须写一个语句,并要有行号4.下列标识符正确的是C。
A)x+y123 B)4_student C)a456 D)U.S5.以下说法正确的是C。
A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分6.B不是C语言提供的合法关键字。
A)char B)scanf C)case D)default7.C语言提供的合法关键字是C。
A)ELSE B)INT C)case D)printf8. 一个C语言程序是由B。
A)一个主程序和若干个子程序组成;B)函数组成, 并且每一个C程序必须且只能由一个主函数;C)若干过程组成;D)若干子程序组成.9. 以下叙述中错误的是(C )A.C语言是一种结构化程序设计语言。
C语言试卷1(含答案)

putchar (j);
}
3、下面的函数功能是求x的y次方。
double fun(double x,int y)
{ int i;
double z=1;
for(i=1;i<=y;i++)
z=z*x;
return z;
}
4、先为数组a输满数据,再为x输入一个数据,在数组a中找出第一个与x相等的元素并将下标输出,若不存在这样的元素,则打印”Not found!”标志。
printf("\"%s\"\n",ch[1]);
}
A. "AAAA"B. "BBB"C. "BBBCC"D. "CC"
9.在C语言中,形参的缺省存储类是。
A. autoB. registerC. staticD. extern
10.以下程序的输出结果是。
main()
{ char x=040;
printf("%0\n",x<<1);
27.对break语句和continue语句,下面说法不正确的是。
A.break语句强制中断当前循环,退出循环体
B.break语句只能用在三条循环语句的循环体或switch语句中
C. 在没有循环情况下,continue语句能用在switch语句中
D.continue语句不能退出循环体
28.c语言允许if-else语句可以嵌套使用,规定else总是与配对。
A.&aa[0]+1B.&aa[1]C..&aa[0]++D. aa+1
c语言题目及答案

注意:所有答案都要写在答题卡上一、单项选择题(20分,每题2分)1.执行下列程序段后,正确的结果是(B)int k, a[3][3] = {1,2,3,4,5,6,7,8,9};for(k=0; k<3; k++)printf(“%2d”, a[k][k]);A) 1 2 3 B) 1 5 9 C) 1 4 7 D) 3 6 92.若a是int类型变量,则计算表达式a=25/3%3的值是:(B)A)3 B)2 C)1 D)03.下面正确的字符常量是:(C)A)“c” B)‘\\’’ C)‘W’ D)‘’4.C语言中,运算对象必须是整型的运算符是:(B)A)% B)/ C)* D)+5.数字字符0的ASCII值为48,若有以下程序main(){char a='1', b='2';printf("%c,",b++);printf("%d\n",b-a);}程序运行后的输出结果是。
(B)A)3,2 B)50,2 C)2,2 D)2,50 6.以下语句或语句组中,能正确进行字符串赋值的是。
(D)A)char *sp;*sp="right!"; B)char s[10];s="right!";C)char s[10];*s="right!"; D)char *sp="right!";7.for(i=0;i<10;i++)if(i〈=5〉break;则循环结束后i的值为(B)A)0 B)1 C)5 D)108.执行下列程序段后,正确的结果是(C)char x[8] = {8,7,6,5,0,0}, *s;s = x+1;printf(“%d\n”, s[2]);A) n B) 0 C) 5 D) 69.C语言规定,简单变量作为实参时,他和对应形参之间的数据传递方式是:AA)单向值传递B) 地址传递C) 相互传递D) 由用户指定方式10.设有数组定义:char str[]=”China”;则下面的输出为(C)printf(“%d”,strlen(str));A)4 B)5 C)6 D)7二、填空题(30分,每空2分)1.下列程序段的输出结果是 3 。
c语言习题及答案

【习题1】一、判断并改错1.1 C程序执行的入口是main()函数,所以main函数必须放在程序的开头。
错误:main函数可以放在程序的任何位置。
并不限定在程序的开头。
定义一个函数包括数据说明部分和执行语句部分,两者可以交叉出现。
错误:不可以交叉出现,数据说明部分在执行语句部分的前面。
scanf("%d,%d",&x,&y);的正确输入格式:3,4<回车>。
正确注释内容太多会影响程序的执行效率。
错误:不会影响程序的执行效率。
因为在编译时,编译系统将注释内容删除或用空格代替,所以注释内容不会编译到目标程序中。
<二、编程题输入圆的半径,求圆的周长,并将结果保留两位小数输出到屏幕上。
提示:定义圆的半径r,圆的周长:2**r,输出结果保留2位小数可以用%.2f输入两个整数,输出其中最大者。
提示:模仿例【习题2】一、单项选择题下面四个选项中,均是不合法的用户标识符的选项是(C)。
A)BA 、x_0、do-B)float、1a0、_YC)x-y、goto、123D)_123、tmp、CHAR下列选项中不正确的常数的选项是(D)。
A)0x12F B)C)D)0388下面正确的字符常量是(B)。
A)"a" B)'\\' C)"\n" D)"\376"下面正确的字符串常量是(C )。
A)'a' B)'376' C)"\\n" D)376表达式'A'+4*'b'的正确结果是(B )。
~A)67 B) C)不确定 D)67L执行printf("%x",100);后的输出结果是(C )。
A)100 B)0x100 C)0X64 D)64存储字符串"\\\'abc\376"需要的字节数是(D )。
C语言程序设计试题及答案

三一.单项选择题1.设int x=1;y=1;表达式x++ || y--的值是_________A.0 B. 1 C. 2 D.-12.main{ int n;n=64;n+6;n2;printf“n=%d\n”;n;} 此程序的输出结果是______________.A.30 B. 24 C. 60 D. 483.若有如下定义;则__________是对数组元素的正确的引用..int a10 ; p ;p=a ; p=a ; p=a ; p=a ;A. &a10B. a11C. p+10D. p4.设整型变量n的值为2;执行语句“n+=n-=nn;”后;n的值是__________ A. 0 B. 4 C. - 4 D. 25.以下不能正确定义二维数组的语句是___________A . int a22={{1};{2}}; B. int a2={1;2;3;4};C. int a22={{1};2;3};D. int a2={{1;2};{3;4}};6.程序段的功能是将变量 u 、s中的最大值赋给变量t .. A. ifu>s t=u;t=s; B. t=u; ift t=s;C. ifu>s t=s;else t=u; D . t=s; ifu t=u;7.下列程序段的输出结果是 ..void main{ int k;for k=1;k<5;k++〉{ ifk%2=0printf"";elseprintf“” ; } }A. B . C. D. 以上都不对8.设变量定义为 int a3={1;4;7};p=&a2; 则p的值是 35 ..A. &a2B. 4C. 7D. 19.能正确表示a和b同时为正或同时为负的逻辑表达式是_________..A.a>=0||b>=0&&a<0 ||b<0 B.a>=0 && b>=0&&a<0 && b<0C.a+b>0 &&a+b<=0 D. ab>010.C语言中;合法的字符型常数是_________..A.‘A’ B.“A” C. 65 D. A11.设有数组定义:cha r array=”China”; 则数组所占的空间是________..A.4个字节 B.5个字节 C.6个字节 D.7个字节12.若变量c为char类型;能正确判断出c为小写字母的表达式是_______..A.’a’<=c<=’z’ B.c>=’a’ || c<=’z’C.‘a’<=c and ‘z’>=c D.c>=’a’ && c<=’z’13.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是_______..A.printf“x=%d\n”;x B.printf“x=%ld\n”;xC.printf“x=%8dl\n”;x D.printf“x=%LD\n”;x;14.下列关于指针定义的描述;___________是错误的..A.指针是一种变量;该变量用来存放某个变量的地址值的..B.指针变量的类型与它所指向的变量类型一致..C.指针变量的命名规则与标识符相同..D.在定义指针时;标识符前的“”号表示后面的指针变量所指向的内容..15.已知:int x; int y10; 下列______是合法的..A.&x B.&x+3 C.&5 D .&y16.指出下面正确的输入语句__________..A. scanf“a=b=%d”;&a;&b ;B. scanf“%d;%d”;&a;&b ;C. scanf“%c”;c ;D. scanf“% f%d\n”;&f ;17.C语言中以追加方式打开一个文件应选择_______________参数..A.“r” B.“w”C.“rb” D.“a”18.Break语句的正确的用法是 ..A. 无论在任何情况下;都中断程序的执行;退出到系统下一层..B. 在多重循环中;只能退出最靠近的那一层循环语句..C. 跳出多重循环..D. 只能修改控制变量..19. 为表示关系x≥y≥z;应使用C语言表达式A.x>=y&&y>=z B. x>=y AND y>=zC.x>=y>=z D. x>=z&y>=z20.以下可以作为C语言合法整数的是________..A.1010B B. 0368 C.0Xffa D. x2a221.在函数中默认存储类型说明符的变量应该是________存储类型..A.内部静态 B. 外部 C.自动 D. 寄存器二.判断题1. C 语言源程序文件通过了编译、连接之后 ; 生成一个后缀为 .EXE 的文件.. 2.在 C 程序中 ; 函数既可以嵌套定义 ; 也可以嵌套调用..3.在 C 程序中; APH 和 aph 代表不同的变量..4.表达式 0195 是一个八进制整数..5.表达式 _ya是不合法的C语言标识符..6. C程序总是从main 函数的第一条语句开始执行的..7. A-=7等价于a=a-7..8.利用fclose函数关闭已打开的文件..9.数组名可以作为参数进行传递..10.执行printf"%x";12345;; 输出 12345 ..三、填空1.C语言的预处理语句以__________开头..2.表达式7+8>2 && 25 %5的结果是_______________________..3.下列程序段是从键盘输入的字符中统计数字字符的个数;用换行符结束循环.. int n=0; ch;ch=getchar ;while __________________{ if ________________ n++;c=getchar ; }4.C语言中putcharc 函数的功能是_________________________________.. 5.int p 的含义是___________________________________________..6.定义fp为文件型指针变量的定义方法为_______________________..7.数组 int a34;共定义了____________个数组元素..四、读出程序..1. 改正下列程序中不正确的语句..main{ int a=8 ; b=1;a=a+b;b=ab;printf"%d; %d";a;b; }2.写出下列程序的运行结果..funint a; int b{ ifa>b return a; Else return b; } main { int x=3;y=8;z=6;r; r=funfunx;y;2z;printf“%d\n”;r; }3. 改正下列程序中不正确的语句..main{ int n ;float s=1.0; forn=10;n>1;n- -s=s+1/n;printf“%6.1f\n”;s; }4. 写出下列程序的运行结果..main{ int n;Forn=3; n<=10; n++ { ifn%5= =0 break;Printf“%d”;n; } }5.写出下列程序的运行结果..include “stdio.h”main{ int a={1;2;3;-4;5}; int m;n;p; p=&a0; p=&a0;m=p+2;n=p+4;printf“%d %d %d ”;p;m;n;}五.编程序1.编程计算下列表达式:s=1+2+3+4+……+102.从键盘上输入a与n的值;计算sum=a+aa+aaa+aaaa+……共n项的和..例a=2; n=4; 则sum=2+22+222+2222..3.求3X3矩阵的主对角线元素之和..4.从键盘上输入10个数存入一维数组中;求这10数中的最大值与最小值并输出.. 5.从键盘上输入若干个字符存入文件write.txt中;遇到回车键输入结束..用“\n”表示答案一.单项选择题1 B 2B 3D 4C 5D 6C 7A 8C 9D 10A 11C 12D 13B 14D 15A 16B 17D 18B 19A 20C 21C二.判断题1√2Ⅹ 3√ 4Ⅹ 5Ⅹ 6√ 7√ 8√ 9√ 10Ⅹ三、填空1 号2 03 ch=’\n’ ch>=’0’ && ch<=’9’4 将变量c中的字符显示到屏幕上..5 指针变量p为整型6 FILE fp7 12四、读出程序..1 printf"%d; %d";&a;&b;2 123 s=s+1.0/n4. 3 45 1 3 5五.编程序1.include "stdio.h"main{ long s=0;t=1;int i;fori=1;i<=10;i++{ t=ti;s=s+t;}printf"%ld";s; }2include "stdio.h"main{ int a;n count=1;sn=0;tn=0; scanf"%d %d";&a;&n;whilecount<=n { tn=tn+a;sn=sn+tn;a=a10;++count; }printf"%d";sn; }3.include "stdio.h" main { int a33;i;j;s=0; fori=0;i<3;i++ forj=0;j<3;j++scanf"%d";&aij; fori=0;i<3;i++forj=0;j<3;j++ ifi==js=s+aij;printf"%d";s; }4.include "stdio.h"main{ int a10;max;min;fori=0;i<10;i++scanf"%d";&ai;max=a0;fori=1;i<10;i++ifai>maxmax=ai;min=a0;fori=1;i<10;i++ifai<minmin=ai;printf"%d %d";max;min; } 5.include "stdio.h"main{ int c;FILE fp;fp=open"write.txt";"w"; c=getchar;whilec='\n'{ fputcc;fp;c=getchar;}fclose; }。
标准C语言程序设计及应用周纯杰版习题参考答案

注:以下内容为教材部分习题答案,如发现错误请告知,欢迎讨论——张惕远习题二一、选择题1、C2、BCD3、A4、A(注:本题强调用户标识符,所以if、int不是,但是sin是用户标识符,原因是库函数不是标准语法成分,开发库函数的程序员也是用户,main虽然不是语法成分,但开发平台预定义了main为console application的执行入口,并且规定了定义格式,所以用户不能用作它用,但_main可以)5、(D)(C)6、C7、D8、B9、A10、 D11、B(注:本题是求strlen("\\\”DEF\”\\”)的值,即字符串中有效字符的个数,不含串结尾符,sizeof(“…”)的值与前者不同,含串结尾符)12、 D13、 C14、 D15、 A16、 B17、 A18、 B二、判断题(对)(错)(错)(对)三、填空题1、B 66回车2、n1=%d\nn2=%d3、5四、计算下列各表达式的值1、注:本书假设采用16位编译平台,所以int和unsigned int均为2字节类型。
(1)47(2)38(3)9(4)0xFFC6 or 65478(5)104(6)22、(1)6(2)50(3)1(4)-16 or 0xFFF0(5)1(6)203、表达式值a的值b的值(1)0 5 3(2)1 5 3(3)3 1 3(4)15 10 4(5)8 8 3(6)1 5 34、表达式值x的值y的值(1)12 25 2(2)0 24 3(3)1 24 3(4) 27 24 3(5) 1 24 3(6)6 6 3(7)24 24 24(y<<=3)(8)27 24 3(9)-29or0xffe3 24 3以上类型均为int5、表达式值x的值y的值(1)0 0 1(2)1 2 1(3)1 0 0(4)-3 -3 3(5)4 2 4以上类型均为int五、程序分析题b=20(注:中间4个空格)a=3600回车习题三一、填空题1、s=6回车2、s=96回车3、(1) c=getchar() or scanf(“%c”,&c)(2) c-32 or c-‘a’+’A’习题四一、写出程序运行结果:1、no 1 a=1no 1 a=0no 1 a=1no 1 a=0(注:教材中关于func函数的原型有错,应该改为:void func();)2、a=0 b=0 c=0a=1 b=0 c=0a=2 b=0 c=03、main:x=5,y=1,n=1fun:x=6,y=21,n=11main:x=5,y=1,n=11fun:x=8,y=31,n=21习题五一、选择题和填空题1、D2、D3、C4、65、C DABC6、(1)j+=2(2)a[j]>a[i](注:教材中for语句有错,应该去掉表达式3后面的分号“;”)最后输出为u nalggace7、(1) s[j] (2)s[j]8、D9、B10、 611、isdigit(s[i])该带参数的宏用来判断字符s[i]是不是数字字符,该宏的定义在头文件ctype.h中12、‘\0’和str1[i] -str2[i]二、1、第7行sum=0;第10行改为:scanf(“%d”,&a[i][j]);习题六一、选择题1、D2、D3、D4、C5、C D6、D7、B8、B二、填空题1、*(p+3) 2 222、cdefgbcdefgabcdefg73、6385三、程序分析题9、第5行改为:p =&s[0]; or p=s;10、第4,5行合为:double x,y,*p;11、第4行改为:int x,*p=&x;否则p为“野指针”或者在给p赋值之前定义一个int变量y,然后p=&y;12、第4,5行交换书写次序。
C语言程序设计试题附答案3篇

C语言程序设计试题附答案3篇C语言程序设计试题附答案11. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue3. 以下定义语句中正确的是( C )A)char a='A'b='B'; B float a=b=10.0;C)int a=10,b= D)float a,b=4.下列选项中,不能用作标识符的是( D )A)_1234_ B)_1_2 C) int_2_ D)2_int_5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则 ( B )A)称为函数的直接递归调用 B)称为函数的间接递归调用C)称为函数的循环调用 D)C语言中不允许这样的递归调用6.以下叙述中正确的是 ( A )A)局部变量说明为static存储类,其生存期将得到延长B)全局变量说明为static存储类,其作用域将被扩大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同7.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是( B)A)for(i=1,p=1;i=0_______;i--){if(____i%17==0____④________) break;}printf("%d\n",__⑤_i____);}3.以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。
main(){ int i,a[20],sum,count;sum=count=0;for(i=0;i0)?? { count++;?? sum+= _a[i]__③___ ;?? }? }printf("sum=%d,count=%d\n",__sum④___,__⑤__count___);}4.以下程序的功能是调用函数fun计算:m=1+2+3+4+…+9+10,并输出结果。
C++程序设计基础试卷期末复习题

程序设计基础期末复习题一、请仔细阅读下面的程序代码,给出程序的运行结果1.写出下面的程序输出的数据,这是什么图形?#include <iostream>using namespace std;int main(){int a[10][6]={0,1},i,j;for(i=1;i<6;i++)for(j=1;j<=i+1;j++) a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=0;i<6;i++){for(j=1;j<=i+1;j++) cout<<a[i][j]<<'\t';cout<<endl;}return 0;}2.写出下面程序的运行结果#include<iostream>using namespace std;void sub(int x,int y,int *z){ *z=y-x;}int main( ){int a,b,c;sub(18,5,&a) ;sub(17,a,&b) ;sub(a,b,&c) ;cout << a << "," << b << "," << c << end1;return 0;}3.写出下面程序的运行结果#include <iostream>#include <stdlib.h>using namespace std;class Time{public:Time(int hr= 0,int min= 0,int sec= 0) //构造函数{hour = hr; minute = min; second = sec;}void printStandard(){cout<<((hour==0|| hour==12)?12:hour%12)<<":"<<(minute<10?"0":"")<<minute<<":"<<(second<10?"0":"")<<second<<(hour<12?" AM":" PM")<<endl;}private:int hour;int minute;int second;};int main(int argc, char *argv[]){Time a(8),b(14,19,9);a.printStandard();b.printStandard();return 0;}4.写出下面程序的运行结果#include <iostream>using namespace std;class point{double x;double y;public:point(double a,double b){x=a;y=b;}friend double distance(point a,point b);};double distance(point a,point b){return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));}int main(){point p1(3,4);point p2(5,7);cout<<distance(p1,p2)<<endl;return 0;}5.写出下面程序的运行结果#include<iostream>using namespace std;int main{int a[]={2,4,6}, *prt=&a[0],x=y,z;for(y=0;y<3;y++)z=(*(prt+y)<x)?*(prt+y):x;cout<<z<<endl;return 0;}6.写出下段代码的运行结果#include <iostream>#include <iomanip>using namespace std;int f(int l,int h,int a[],int n){int i;int sum=0;for (i=0;i<n;i++)if ((a[i]<l)||(a[i]>h)) sum+=a[i];return sum;}int main(){int a[100];int n,i,l,h;cin>>n>>l>>h;for (i=0;i<n;i++)cin>>a[i];cout<<f(l,h,a,n)<<endl;return 0;}输入:6 20 4025 56 22 7 19 387.写出下面程序的运行结果#include <iostream>#include <iomanip>using namespace std;int f(int a,int b){if (a%b = = 0) return b; //递归出口else return f(b,a%b);}int main(){int a,b,t;cin>>a>>b; //输入if (a>b) t=f(a,b);else t=f(b,a);cout<<t<<" "<<a*b/t; //输出return 0;}输入:32 1448.阅读下面的程序代码,写出下面程序的运行结果#include <iostream>using namespace std;int type(int m);//判断第m年是否是闰年,是返回1,否则返回0 int main(){char week[7][10]={"Saturday","Sunday","Monday","Tuesday","Wednesday","Thursady","Friday"};int year[2]={365,366};int month[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31};int days,dayofweek;int i=0,j=0;while(cin>>days&&days!=-1){dayofweek = days%7;for(i=2000;days>=year[type(i)];i++)days-=year[type(i)];for(j=0;days>=month[type(i)][j];j++)days-=month[type(i)][j];cout<<i<<"-"<<j+1<<"-"<<days+1<<" "<<week[dayofweek]<<endl;}return 0;}int type(int m){if(m%4!=0 || (m%100==0&&m%400!=0)) return 0;return 1;}输入数据如下:18301840-19.写出下面程序的运行结果class Student{public:Student(){ coursename="#";classhour=0;credit=0; }virtual void Calculate(){credit=classhour/16;}void SetCourse(string str,int hour){coursename=str;classhour=hour;}void SetCredit(int cre){credit=cre;}int GetHour(){ return classhour; }void Print(){cout<<coursename<<'\t'<<classhour<<"学时"<<'\t'<<credit<<"学分"<<endl;}private:string coursename; //课程名int classhour; //学时int credit; //学分};class GradeStudent:public Student{public:GradeStudent(){};void Calculate(){SetCredit(GetHour()/20);}};int main(){Student s,*ps;GradeStudent g;s.SetCourse("英语",80);g.SetCourse("英语",80);ps=&s;ps->Calculate();ps->Print();ps=&g;ps->Calculate();ps->Print();return 0;}10.假定输入的10个整数为:33,65,54,88,55,32,98,56,78,73,下列程序的运行结果是#include<iostream>using namespace std;int main(){int a,b,c,x;a=b=c=0;for(int i=0;i<10;i++){cin>>x;switch(x%3){case 0:a+=x;break;case 1:b+=x;break;case 2:c+=x;break;}}cout<<a<<”,”<<b<<”,”<<c<<endl;}11.写出下段代码的运行结果#include<iostream>using namespace std;int main(){inta=5,b=4,c=3,d;d=(a>b>c);cout<<d;}12.写出下段代码的运行结果#include<iostream>using namespace std;void fun(int *a,iht *b){int *k;k=a;a=b;b=k;}void main( ){int a=3,b=6,*x=&a,*y=&b;fun(x,y);cout << a << " " <<b;}13.写出下面程序的运行结果#include <iostream>using namespace std;int main (){int s=0;for (int i=1;i<8;i++)s+=i*i;cout <<"s="<<s<<endl;return 0;}14.写出下面程序的运行结果#include <iostream>using namespace std;class a{public:int f1();int f2();void setx(int m){x=m;cout<<x<<endl;}void sety(int n){y=n;cout<<y<<endl;}int getx(){return x;}int gety(){return y;}private:int x,y;};int a::f1(){return x+y;}int a::f2(){return x-y;}void main(){a aa;aa.setx(10);aa.sety(5);cout<<aa.getx()<<'\t'<<aa.gety()<<endl;cout<<aa.f1()<<'\t'<<aa.f2()<<endl;}15.写出下段代码的运行结果# include <iostream>using namespace std;int dec(int a[],int n){if (n <= 1) true;if (a[0] < a[1]) return false;return dec(a+1,n-1);}int main( ){int a[5]={ 3,4,5,2,9};cout<<dec(a,5);}16.写出下段代码的运行结果#include <iostream>using namespace std;int main(){int s=0;for (int i=1; ; i++) {if (s>50) break;if (i%3==0) s+=i;}cout <<"i,s="<<i<<","<<s<<endl;}17.写出下段代码的运行结果#include <iostream># include <iomanip >using namespace std;void main(){int a[9]={2,4,6,8,10,12,14,16,18};for (int i=0; i<9; i++) {cout <<setw(5)<<*(a+i);if ((i+1)%3==0) cout <<endl;}}18.写出下面程序的运行结果#include <iostream># include <iomanip >using namespace std;class A {public :A() { a=b=0; }A(int aa,int bb) {a=aa; b=bb;cout <<a<<' '<<b<<endl;}private:int a,b;};int main(){A x,y(2,3),z(4,5);return 0;}19.写出下面程序的运行结果#include <iostream>#include <cstring>using namespace std;int main(){char s1[ 20 ] = "Happy ";char s2[] = "New Year ";char s3[ 40 ] = "";cout << "s1 =" << s1 << "\ns2 =" << s2;cout << "\nstrcat(s1, S2) = "<< strcat( s1, s2 );cout << "\nstrncat(s3, s1, 6) =" << strncat( s3, s1, 6 );cout << "\nstrcat(s3, s1) = "<< strcat( s3, s1 ) << endl;return 0;}20.写出下面程序的运行结果#include <iostream>#include <stdlib.h>using namespace std;int main(int argc, char *argv[]){int a;char buf[10];cin>>a;itoa(a,buf,10);int result = 1;for(int i=0;i<strlen(buf);i++)if(buf[i]!='0') result = result*(buf[i]-'0');cout<<"result= "<<result<<endl;return 0;}输入:20090115二、选择题(每题3分,共15分)1.有以下函数:fun(char *a,char *b){while((*a!='\0')&&(*b!='\0')&&(*a==*b)){a++;b++;}return(*a-*b);}该函数的功能是______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
写出程序运行结果
1、下面程序的运行结果是:________
void swap1(int c[])
{ int t;
t=c[0];c[0]=c[1];c[1]=t;
}
void swap2(int c0,int c1)
{ int t;
t=c0;c0=c1;c1=t;
}
main( )
{ int a[2]={2,4},b[2]={3,5};
swap1(a); swap2(b[0],b[1]);
printf(“%d %d %d %d\n”,a[0],a[1],b[0],b[1]); }
2、下面程序的运行结果是:_____________
main()
{int a=2,i
for(i=0;i<3;i++)
printf("%4d",ff(a));
}
ff(int a)
{int b=0;static int c=3;
b++;
c++;
return(a+b+c);
}
3、下面程序的运行结果是:________
main()
{int i,j,k=5;
for(i=0;i<2;i++)
{k++;
{int k=0;
for(j=0;j<=3;j++)
{if(j%2)continue;
k++;}
}
k++;}
printf("k=%d\n",k);
}
4、下面程序的运行结果:_________。
main()
{int a,b,k=2,m=6,*p1=&k,*p2=&m;
a=p1==&m;
b=(-*p1)/(*p2)+7;
printf("a=%d,",a);
printf("b=%d\n",b);
}
5、以下程序运行结果:________。
funa(int a)
{int b=0;
static int c=0;
a=c++,b++;
return (a);
main()
{int a=3,i,k;
for(i=0;i<2;i++)
k=fun(a++);
printf("%d\n",k);
}
6、下面程序的运行结果:_____________
struct stu
{int num;
char name[10];
int age;
}
void fun(struct stu *p)
{printf("%s\n",(*p).name);
}
main()
{struct stu students[3]={{2010,"zhang",20},{2011,"wang",19},{2012,"zhao",18};
fun(students+2);
}
7、下面程序的运行结果是:_________。
main()
{int i,j,k=5;
for(i=0;i<2;i++)
{k++;
{int k=0;
for(j=0;j<=3;j++)
{if(j%2)continue;
k++;}
}
k++;}
printf("k=%d\n",k);
}
8、下面程序的运行结果是:_________。
main()
{int a[5]={1,3,5,7,9},x,y,*p;
p=&a[0];
x=*(p+2)
y=*(p+4);
printf("%d ,%d , %d\n",*p,x,y);
}
9、下面程序的运行结果是:_________。
#include "stdio.h"
int k=1;
main( )
{int i=6;
fun(i);
printf("\n%d,%d",i,k);
}
fun(int m)
{m+=k;k+=m;
{char k='B';
printf("%d",k-'A');
}
printf("%d,%d",m,k);
}
10、下面程序的运行结果是:_________。
#include <stdio.h>
void fun(int *s)
{static int j=1;
do
{s[j]+=s[j+1];
}while(++j<2);
}
main()
{int k,a[10]={1,2,3,4,5};
for(k=1;k<3;k++)
fun(a);
for(k=0;k<5;k++)
printf("%d",a[k]);
}
11、下面程序的运行结果是:_________。
#include "string.h"
fun(char *w,int n)
{char t,*s1,*s2,t;
s1=w; s2=w+n-1;
while(s1<s2)
{t=*s1;
*s1++=*s2;
*s2--=t;
}
}
main()
{static char *p="123456789";
fun(p,strlen(p));
printf("%s\n",p);
}
12、下面程序的运行结果是:_________。
main()
{struct cmplx
{int x;
int y;
}cnum[2]={1,3,2,5};
cnum[0].x=cnum[0].x*cnum[1].x;
cnum[1].y=cnum[0].y+cnum[1].y;
printf("%d\n",cnum[1].y/cnum[0].x*cnum[1].x);
}
14、以下程序的正确运行结果是:______。
#inclued<stdio.h>
main()
{int k=5,m=1,p;
p=func(k,m);printf("%d,",p);
p=func(k,m);printf("%d\n",p);
}
func(int a,int b)
{static int m=0,i=2;
i+=m+1;
m=i+a+b;
return m;
}
15、以下程序的正确运行结果是:______。
int w=3;
main()
{int w=10;
printf("%d\n",fun(4)*w);
}
fun(int k)
{if(k= =0)return (w);
return(fun(k-1)*k);
}
16、下面程序的运行结果是:_________。
main()
{char *s="1312442311";
int v1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{case '1': v1++;
case '3': v3++;
case '2':v2++;
case '4':v4++;
}
printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4); }
编程题
1、产生50个[10,99]间的随机整数存入一个一维数组中,计算这50个数的平均
值(保留两位小数)。
2、 输出100以内的个位数为5、且能被7整除的所有数,并统计个数。
3、用随机函数产生100个[0,99]的整数,存放到一个10×10的二维数组中,求每列数组元素的和。
输出该二维数组和每列数据的和。
4、输入x 和值,按下面公式:计算前n 项和,直到x n /n! < 10-5。
5、从键盘输入20个单精度数,对输入的数据按从大到小的顺序进行排序,然后输出排序后的结果。
6、编写程序,计算下面的多项式的前30和。
)
1(*1......4*313*212*111++++++n n
7、按下面公式计算计算π的近似值,直到1/n<1e-6。
!......!3!2132n x x x x n +++++ +-+-=7151314
1π。