1 / 12
文档名称:

华为C语言机试题面试题汇总.docx

格式:docx   大小:13KB   页数:12页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

华为C语言机试题面试题汇总.docx

上传人:haha 2022/4/10 文件大小:13 KB

下载得到文件列表

华为C语言机试题面试题汇总.docx

相关文档

文档介绍

文档介绍:华为C语言机试题面试题汇总
1.第一题的题目大概是输入整型数组求数组的最小数和最大数之和,例如输入1,2,3,4则输出为5,当输入只有一个数的时候,则最小数和最大数都是该数,例如只输入1,则输出为2;另外数组的长度不超过50
* outstr = (char*)malloc(len*sizeof(char));
stringZip(str,len,outstr);
printf("压缩之后的字符串为:%s\n",outstr);
free(outstr);
outstr = NULL;
}
、减运算式,请编写一个程序输出运算结果字符串。
输入字符串的格式为:“操作数1运算符操作数2”,“操作数”与“运算符”之间以一个空格隔开。
补充说明:
,不需要考虑计算结果溢出的情况。
,输出结果为“0”。
要现函数:
void arithmetic(const char *pInputStr, long lInputLen, char *pOutputStr);
pInputStr:输入字符串
lInputLen:输入字符串长度
pOutputStr:输出字符串,空间已经开辟好,与输入字符串等长;#include
#include
#include
void arithmetic(const char *input, long len, char *output)
{
char s1[10];
char s2[10];
char s3[10];
int cnt = 0;
int len_input=strlen(input);
for(int i=0;idata=i;
head=p;
for(i=1;idata=i+1;
p->next=q;
p=q;
}
p->next=head;//使链表尾连接链表头,形成循环链表
return head;
free(p);
p=NULL;
free(q);
q=NULL;
}
void deletefun(LinkList *L,int m)
{
LinkList *p,*q,*temp;
int i;
p=L;
while(p->next!=p)
{
for(i=1;inext;
}
printf("%5d",p->data);
temp=p;
q->next=p->next;
p=p->next;
free(temp);
}
printf("%5d\n",p->data);
}
int main()
{
int n=7,m=3;
LinkList *head1;
head1=create(n);
deletefun(head1,m);
return 0;
}
7..输入一串字符,只包含“0-10”和“,”找出其中最小的数字和最大的数字(可能不止一个),输出最后剩余数字个数。如输入“3,3,4,5,6,7,7”
#include
#include
#include
void main()
{
char str[100];
printf("输入一组字符串:\n");
scanf("%s",&str);
int len=strlen(str);
int array[100];
int count=0;
for(int i=0;i='0'&&str[i]array[j])
min=array[j];
}
for(int k=0;k<count;k++)
{
if(array[k]==min)
result--;
if(array[k]