(42)現(xiàn)在有如下程序
#include "stdio.h"
main()
{char s[80];
int i,j;
gets(s);
for(i=j=0;s[i]!=′\0′;i++)
if(s[i]!=′H′______)
s[j]=′\0′;
puts(s);}
這個程序段的功能是刪除輸入的字符串中字符′H′,則空線上應當添入的是
A)s[j++]=s[i];j++;
B)s[j]=s[i++];j++;
C)s[j++]=s[i];
D)s[j]=s[i];
(43)下列說法中錯誤的是
A)靜態(tài)局部變量的初值是在編譯時賦予的,在程序執(zhí)行期間不再賦予初值
B)若全局變量和某一函數(shù)中的局部變量同名,則在該函數(shù)中,此全局變量被屏蔽
C)靜態(tài)全局變量可以被其他的編輯單位所引用
D)所有自動類局部變量的存儲單元都是在進入這些局部變量所在的函數(shù)體(或復合語
句)時生成,退出其所在的函數(shù)體(或復合語句)時消失
(44)閱讀下列程序段,則程序的輸出結(jié)果為
#include "stdio.h"
#define M(X,Y)(X)*(Y)
#define N(X,Y)(X)/(Y)
main()
{int a=5,b=6,c=8,k;
k=N(M(a,b),c);
printf("%d\n",k);}
A)3
B)5
C)6
D)8
(45)若有以下定義和語句
struct a
{ int n,m;};
struct a st[3]={{1,20},{2,19},{3,21}};
struct a *p=st;
則以下錯誤的引用是
A)(p++)->n;
B)st[0].n;
C)(*p).n;
D)p=&st.m;
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |