《高级语言程序设计》练习题

发布 2021-04-24 16:45:28 阅读 5203

1. 以下选项中,能用作用户标识符的是。

a ) void b ) 8_8c ) 0d ) unsigned

2. 以下选项中不合法的标识符是。

a ) print b ) for c ) a d ) 00

3. 以下选项中,能用作数据常量的是。

a ) o115 b ) 0118 c ) 1.5e1.5 d ) 115l

4. 以下选项中,合法的一组c语言数值常量是( )

a) 028 -0xf b) 12. 0xa23 4.5e0

c) .177 4e1.5 0abc d) 0x8a 10,000

5. 若变量已定义,执行语句scanf(“a=%d,b=%d,c=%d”, x, &y, &z);后,使变量x的值为10、变量y的值为20,、变量z的值为30,则应从键盘输入。

6. 已有变量定义:char ch; 则能够正确判断ch是否为数字字符的条件表达式是。

7. 已有定义:int a=0; 则表达式(++a)||a=a+2)执行后,a的值为。

8. 已有定义:int w=0;,条件表达式(w>0||w<0) ?0 : 1的值为。

9. 有条件表达式:k = a>b ? b>c ? 1 : 0) :0,请写出一个与其功能相同的选择语句:

10. 函数fun的定义如下,则fun(5)的返回值为。

int fun(int n)

if(n==1) return 1;

else return n+fun(n-1);

11. 若有定义int x,y; 并已正确给变量赋值,则与表达式(x-y) ?x++)y++)中的条件表达式(x-y)等价的是。

12. 若文本文件中原内容为:hello,则运行以下程序后,中的内容为。

main()

file *f;

f=fopen(""a+")

fprintf(f,"abc");

fclose(f);

13. 执行完以下程序段后,变量n的值为。

char s[20]=“fjut-2013-c_exam”;

int i, n=0;

for(i=0; s[i]!=0’; i++)

if(s[i]>=a’&&s[i]<=z’) n++;

14. 有以下程序,则程序运行后的输出结果是。

#include <>

#define f(x) x*x*x

main()

int a=3,s,t;

s=f(a+1);

t=f((a+1));

printf("%d,%d",a,t);

15. 有以下程序, 程序运行后的输出结果为。

#include <>

main()

int m=1, n=2, *p=&m, *q=&n, *r;

r=p; p=q; q=r;

printf("%d,%d,%d", m, n, *p, *q);

16. 有以下程序,程序运行后的输出结果是。

#include <>

#include <>

main()

char str[30]=,p;

p = str

printf("%d, %s", strlen(str), p);

17. 有以下程序, 程序运行后的输出结果为。

#include <>

#include <>

main()

char a[10]="abcd";

printf("%d, %d", strlen(a), sizeof(a));

18. 有以下程序,程序运行后的输出结果是。

#include <>

int f(int n)

static int a=1;

a++;n+=a;

return n;

main()

int a=3, s;

s=f(a); s=s+f(a);

printf("%d",s);

19. 有以下程序, 若通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b,则正确的输入格式是(以代表空格, 代表回车。

#include <>

main()

int a1,a2;

char c1,c2;

scanf("%d%c%d%c",&a1,&c1,&a2,&c2);

printf("%d,%c,%d,%c",a1,c1,a2,c2);

20. 有以下程序,程序运行后的输出结果是(字母a的ascii码值为97

#include <>

void fun(char *s)

while(*s)

if(*s%2==0) printf("%c",*s);

s++;main()

char a=

fun(a);

printf("");

21. 设有宏定义:#define isdiv(k,n) (k%n==1)?1:0),则宏调用isdiv(m,5)的值为。

22. 有以下程序,若文本文件中原有内容为:hello,则运行以上程序后,文件的内容为。

#include <>

main()

file *f;

f=fopen(""w");

fprintf(f,"abc");

fclose(f);

23. 以下程序的功能是:通过函数func 输入字符并统计输入字符的个数。输入时用字符@作为输入结束标志。请填空。

#include <>

int函数说明语句 */

main()

long n;

n=func();

printf("n=%ld",n);

___func()

int m;

while(getchar !=

retum m;

24. 有下列程序,程序的运行结果是。

#include <>

int fun(char s)

int n=0;

while(*s<='9'&&s>='0')

n=10*n+*s-'0';

s++;return n;

main()

char s[10]=;

printf("%d",fun(s));

25. 有下列程序,程序的运行结果是。

#include <>

int a=1;

int f(int c)

static int a=2;

c=c+1;

a++;return a+c;

main()

int i,k=0;

for(i=0;i<2;i++)

int a=3;

k+=f(a);

k+=a;printf("%d",k);

26. 下列程序统计从键盘输入的字符中大写字母的个数,num[0]中记录字母a 的个数,num[1]中记录字母b 的个数,以此类推。用#号结束输入,请填空。

#include <>

main( )

int num[26]=,i;

char ch;

while((chifnum

for(i=0; i<26; i++)

printf("%c: %d", i+'a', num[i]);

27. 以下程序的功能是:求出用数字0至9组成没有重复数字且是13倍数的三位数的数量,请填空。

#include<>

int main()

int i, j, k, w, count = 0;

fori<=9; i++)

for(j=0;j<=9; j++)

for(k=0; k<=9;k++)

ifw = i*100+j*10+k;

ifcount++;

printf(" count=%d", count);

return 0;

28. 以下函数的功能,是将一个四位整数(参数n)的千位与十位交换、百位与个位交换,从而组成一个新的四位整数,并将这个新的四位整数作为函数值返回。请填空。

int digitswap(int n)

int a, b, c, d;ab

cdreturn

29. 以下函数的功能是将s所指字符串中的字母转换为按字母序列的后继字母(但z转换a,z转换为a),其他字符不变。请填空。

高级语言程序设计练习题

一 填空题 1 c语言程序的基本单位是 函数。2 在c语言中,数字056是一个 八 进制数,0xff是一个 十六 进制数。3.若程序中使用了函数scanf 则必须包含的头文件名为 4.若程序中使用了函数strlen 则必须包含的头文件名为 5 c语言程序的三种基本结构是 循环顺序选择 6.若程序中使...

高级语言程序设计习题

高级语言程序设计 习题。一 填空题。1.以下条件表达式可计算1 a 的值,填空完成语句 a 0 1 a 2.函数max定义的首部为 int max int x,int n 该函数完成实现寻找长度为n的数组x中的最大元素。若在主函数中有定义 int c,a 10 并要求函数调用后,变量c存放数组a中的...

高级C语言程序设计习题

1.单项选择题 1 c 语言是在 b 语言的基础上产生的。a.a b.b c.d d.e 2 在 c 语言中,每个语句必须以 d 结束。a.回车符 b.冒号 c.逗号 d.分号 3 标识符和关键字间,要用 c 隔开。a.回车符 b.冒号 c.空格 d.分号 4 用 c 语言编写的源文件经过编译,若没...