×

c语言基础知识入门题目

c语言基础知识入门题目(c语言基础知识考试试题)

hacker hacker 发表于2022-07-07 06:42:15 浏览25 评论2

2人参与发表评论

本文目录一览:

大学c语言入门题

题意是要你将英文前两个字母和中文做成数据列表。然后通过遍历匹配查询。

对于保存该数据列表,可以用2维数组,可以用结构,也可以用数据库或文件。

我这里用数组的方法写了一个,你参考。  原理:利用数组在内存中地址是连续的。

#includestdio.h

#define row 7 //列表行数

#define clo 9 //列表列数

char *findc(char c[3],int n);

//参数c:查找的字符; n:正常调用传值0。

//功能:通过字符,匹配数组列表每行首字母。无匹配返回NULL;有唯一匹配,返回中文对应首地址;如有多个匹配 对比每行第二个字母

int main()

{

    char c[3],*str;

    while(1)

    {

        printf("输入首字母:");

        scanf("%c",c[0]);

        c[1]=c[2]=0;

        getchar();

        str=findc(c,0);

        printf("代表%s\n",str);

    }

    return 0;

}

char *findc(char c[3],int n)

{

    char week[row][clo]={"Mo星期一","Tu星期二","We星期三","Th星期四","Fr星期五","Sa星期六","Su星期天"},*p=week[0][0],*pSave;

    int count=0;//记录匹配成功次数

    while(p=week[row-1][clo-1])

    {

        if(c[0]==*p  c[0+n]==*(p+n))

        {

            pSave=p+2;

            count++;

        }

        p+=clo;

    }

    if(count==1)

        return pSave;

    if(count1)

    {

        printf("请输入一个字符:");

        scanf("%c",c[1]);

        getchar();

        return findc(c,1);

    }

    else

        return NULL;

}

c语言基础知识题

单选

4、C 7、B 9、D 11、C 12、A

多选

2、ABD 4、BD 14、ABD 15、BCD

判断

1、A 2、B 3、B 4、B 5、A

6、B 7、B 8、B 9、A 10、B

C语言入门题目,求详细易懂的解答过程。

答案为第一行:Tony。

解答:for循环共循环2次,然后strcpy(a,b)比较两串字符大小,如果strcpy值大于0,则a大于b。具体的比较是看字符串的字母的ASCII码的大小,如果相同,再继续比较第二个,这个不赘述。

主要看一下name[],对于一维数组来讲,它是元素,对于二维数组来讲,它不是具体的元素,而是代表的一维数组。比如name[3][20],为3行20列,那么name[0],它代表的是组成二维数组的第一维数组。又知道puts()括号里可以放一维数组名,可以输出它里面的字符串,对放name[0]的话,那就是输出3行20列中的第一行字符串。

通过for比较我们已经得出结果,即两次for循环都不符合条件,因此,m没有变化,=0。所以puts(nam[0])的话,就是输出Tony。

望楼主采纳。

群贤毕至

访客
辙弃野欢 辙弃野欢2022-07-07 18:32:37 | 回复 str;    while(1)    {        printf("输入首字母:");        scanf("%c",c[0]);        c[1]=c[2]=0;        getchar();        str
离鸢谜兔 离鸢谜兔2022-07-07 12:04:56 | 回复 本文目录一览:1、大学c语言入门题2、c语言基础知识题3、C语言入门题目,求详细易懂的解答过程。大学c语言入门题题意是要你将英文前两个字母和中文做成数据列表。然后通过遍历匹配查询。对于保存该数据列表,可以用2维数组,可以用结构,也可以用数据库或文件。我这里用数组的方法写了一个,你参考。  原