1、有数组定义inta={{1},{2,3}}则a[0]的值为0。()
2、int(*ptr)(),则ptr是一维数组的名字。()
3、指针在任何情况下都可进行>,<,>=,<=,==运算。()
4、switch(c)语句中c可以是int,long,char,float,unsignedint类型。()
5、#defineprint(x)printf("theno,"#x",is")
二、填空题(共30分)
1、在windows下,写出运行结果,每空2分,共10分。
charstr[]="Hello"
char*p=str
intn=10
sizeof(str)=()
sizeof(p)=()
sizeof(n)=()
voidfunc(charstr[100])
{}
sizeof(str)=()
2、voidsetmemory(char**p,intnum)
{*p=(char*)malloc(num)}
voidtest(void)
{char*str=NULL
getmemory(&str,100)
strcpy(str,"hello")
printf(str)
}
运行
test函数有什么结果?()
10分
3、设
intarr[]={6,7,8,9,10}
int*ptr=arr
(ptr++)+=123
printf("%d,%d",*ptr,*(++ptr))
()10分
三、编程题(第一小题20,第二小题30分)
1、不使用库函数,编写函数
intstrcmp(char*source,char*dest)
相等返回
0,不等返回
-1
2、写一函数
intfun(char*p)判断一字符串是否为回文,是返回
1,不是返回
0,出错返回
-1
阅读了本文,本站还为你提供以下可能你会感兴趣的相关文章:
厦新笔试真题
安信证券笔试题
日立环球存储笔试题目
#include<stdio.h>#include<string.h>
int a[100000],b[100000],total[1000000]
int i=0,j=0
void getdata()
{
char t
memset(a,-1,sizeof(a))
memset(b,-1,sizeof(b))
memset(total,0,sizeof(total))
printf("please input two numbers will be multiplied(a and b):\n")
while(scanf("%c",&t)!=EOF&&t!='\n'&&t!=' ')
a[i++]=t-'0'
while(scanf("%c",&t)!=EOF&&t!='\n'&&t!=' ')
b[j++]=t-'0'
}
void chengf()
{
int k,t,i1,j1,flag=0
i1=i,j1=j
for(i=i1-1i>=0i--)
{
k=flag
for(j=j1-1j>=0j--)
{
t=b[j]*a[i]
total[k]+=t%10
total[k+1]+=t/10
if(total[k]>=10)
{
total[k+1]+=total[k]/10
total[k]%=10
}
k++
}
flag++
}
//输出部分
while(total[k]<=0)k--
printf("\nOutput the result as follows:\n")
for(i=0a[i]>=0i++)
printf("%d",a[i])
printf(" * ")
for(j=0b[j]>=0j++)
printf("%d",b[j])
printf(" = ")
for(k>=0k--)
printf("%d",total[k])
}
int main()
{
getdata()
chengf()
return 0
}