参考答案和解析
#include;#include
更多“程序中若要使用printf()函数就必须引用头文件”stdio.h”。”相关问题
  • 第1题:

    以下四个程序中,完全正确的是()。A.include main( ); { /* programmlng* / printf( "p

    以下四个程序中,完全正确的是( )。

    A.#include <stdio.h> main( ); { /* programmlng* / printf( "programming! \n" ); }

    B.#include <stdio.h> main( ) { /*/programming printf("programming! \n"); }

    C.#include <stdio.h> main( ) { /*programming* / printf( "programming! \n" ); }

    D.include <stdio.h> main ( ) { /*/* programming*/*/ printf( "programming! \n" ); }


    正确答案:C
    解析:选项A)main();后面不应该有分号;选项B)中的注释语句不正确;选项D)的include前缺少#。

  • 第2题:

    若要在程序文件中使用数学函数,则需要引入的系统头文件为math.h。()

    此题为判断题(对,错)。


    正确答案:√

  • 第3题:

    请编写函数fun(),它的功能是:求出ss所指字符串中指定字符的个数,并返回此值。

    例如,若输入字符串123412132,输入字符1,则输出3。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

    试题程序:

    include<coio.h>

    include<stdio.h>

    define M 81

    int fun(char *ss,char c)

    {

    }

    main()

    { char a[M],ch;

    clrscr();

    printf("\nPlease enter a string:");

    gets(a);

    printf("\nPlease enter a char:");

    ch=getchar();

    printf("\nThe number of the char is:%d \n",fun(a,ch));

    }


    正确答案:int fun(char *sschar c) { int i=0; for (;*ss!='\0';ss++) if(*ss==c) i++; /*求出ss所指字符串中指定字符的个数*/ return i; }
    int fun(char *ss,char c) { int i=0; for (;*ss!='\0';ss++) if(*ss==c) i++; /*求出ss所指字符串中指定字符的个数*/ return i; } 解析:从字符串ss中找出子字符串的方法是:从第1个字符开始,对字符串进行遍历:若ss串的当前字符等于t串的第1个字符,两字符串的指针自动加1,继续比较下一个字符;若比较至字符串的结尾,则跳出循环;若“串的字符和c串的字符不对应相同,则继续对,s串的下一个字符进行处理。本程序是采用逐一比较的方式找出出现的次数。循环的作用是在串中从左到右逐一走动,if()的作用是进行判断是否相同,若与c相同则表示又出现一次.

  • 第4题:

    若要在程序文件中进行标准输入输出操作,则必须在开始的 include命令中使用头文件______。


    正确答案:iostreflm.h
    iostreflm.h 解析:本头文件很重要,包含了基本输入输出所需要的库函数。

  • 第5题:

    给定程序中,函数fun()的功能是:使数组中的元素的值缩小5倍。

    请改正程序中的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

    试题程序:

    include<stdio.h>

    include<conio.h>

    float m[10];

    /*************found**************/

    int fun (void)

    {

    int j;

    printf("In subfunc after calling\n");

    for(j=O;j<lO;j++)

    {

    ;

    /*************found**************/

    print ("%f ",m[j]%5);

    }

    }

    main()

    {

    int i;

    printf ("In main before calling\n");

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

    {

    m[i]=i+20;

    printf("%f ",m[i]);

    }

    fun();

    printf("\nIn main after calling\n");

    for(i=O; i<10;i++)

    printf("%f ",m[i]/5);

    }


    正确答案:(1)错误:int fun(void) 正确:void fun(void) (2) 错误:printf("%f"m[j]%5); 正确:printf("%f"m[j]/5);
    (1)错误:int fun(void) 正确:void fun(void) (2) 错误:printf("%f",m[j]%5); 正确:printf("%f",m[j]/5); 解析:错误1:函数fun()没有返回值,所以定义函数类型为void。错误2:此处考查的是除法运算符和取余运算符的区别。

  • 第6题:

    以下4个程序中,完全正确的是

    A.#include <stdio.h> main(); {/*programming*/ printf("programming!\n");}

    B.#include <stdio.h> main(); {/*/ programming /*/ printf("programming!\n");}

    C.#include <stdio.h> main() {/*/*programming*/*/ printf("programming!\n");}

    D.include <stdio.h> main() {/*programming*/ printf("programming!\n");}


    正确答案:B
    解析:选项A)main();的分号是错误的,不能有分号;选项C)的注释语句多了两个*号;选项D)include前面没有#。

  • 第7题:

    strlen()库函数与stdio.h头文件问题?

    strlen()是一个计算字符串长度的这么一个库函数,这个库函数是定义在string.h这个头文件里的,要想使用这个库函数就必须调用预处理命令将string.h添加到当前的代码中,可是为什么在调用string.h这个头文件的基础上还要调用stdio.h这个头文件呢?stdio.h只是一个输入输出函数的这么一个头文件,跟strlen()库函数有什么关系,,,求解。


    stdio.h是标准输入输出,C语言本身不包括输入输出函数,如:printf,scanf等等,这些C语言本身并没有包含这些函数,所以就要加stdio.h库函数,里面就有了这些输入输出函数的声明;而strlen函数在包含在string.h中的,所以两者没有任何关系,而你所提的问题,是由于你的程序代码中使用了一些C语言没有提供的函数,但是这些函数又恰好是stdio.h中所包含的,故一定得包含stdio.h头文件,否则无法运行

    1、stdio.h是标准输入输出,C语言本身不包括输入输出函数
    如:printf,scanf等,这些C语言本身并没有包含这些函数,所以就要加stdio.h库函数,里面就有了这些输入输出函数的声明

    2、strlen函数在包含在string.h中的,所以两者没有任何关系,而你所提的问题,是由于你的程序代码中使用了一些C语言没有提供的函数,但是这些函数又恰好是stdio.h中所包含的,所以一定得包含stdio.h头文件,否则无法运行


    stdio.h是标准输入输出,C语言本身不包括输入输出函数,如:printf,scanf等等,这些C语言本身并没有包含这些函数,所以就要加stdio.h库函数,里面就有了这些输入输出函数的声明;
    而strlen函数在包含在string.h中的,所以两者没有任何关系,而你所提的问题,是由于你的程序代码中使用了一些C语言没有提供的函数,但是这些函数又恰好是stdio.h中所包含的,故一定得包含stdio.h头文件,否则无法运行。

  • 第8题:

    在源程序的开始处加上“include”进行文件引用的原因,以下叙述正确的是( )。

    Astdio.h文件中包含标准输入输出函数的函数说明,通过引用此文件以便能正确使用prinff、scanf等函数

    B将stdio.h中标准输入输出函数链接到编译生成的可执行文件中,以便能正确运行

    C将stdio.h中标准输入输出函数的源程序插入到引用处,以便进行编译链接

    D将stdio.h中标准输入输出函数的二进制代码插入到引用处,以便进行编译链接


    答案:A

  • 第9题:

    在一个C语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为()。
    #include

  • 第10题:

    若程序中使用了库函数toupper、strcpy,那么在预处理命令中必须写入的头文件名为()


    正确答案:ctype.h和string.h

  • 第11题:

    printf函数是一个标准库函数,它的函数原型在头文件"string.h"中。


    正确答案:错误

  • 第12题:

    单选题
    以下叙述中错误的是(  )。
    A

    当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL

    B

    函数可以返回地址值

    C

    改变函数形参的值,不会改变对应实参的值

    D

    可以给指针变量赋一个整数作为地址值


    正确答案: A
    解析:
    A项正确,NULL是在头文件stdio.h中定义的符号常量;B项正确,函数的返回值可以是地址,即指针;C项正确,函数调用中形参值的变化不会传递给实参;D项错误,不能将一个整数直接赋给指针变量作为地址,只能用取地址运算符“&”把该整型变量的地址赋值给该指针变量。答案选择D选项。

  • 第13题:

    请补充函数fun(),函数fun()的功能是求7的阶乘。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<stdio.h>

    long fun(int n)

    {

    if(【 】)

    return(n*fun(【 】);

    else if(【 】)

    return 1;

    }

    main()

    {

    int k=7;

    printf("%d!=%ld\n", k, fun(k));

    }


    正确答案:n>1 n-1 n==1
    n>1 n-1 n==1 解析:第一空:求阶乘时采用递归的算法,n>1和n==1这两种情况的处理方法不同,需要分开考虑。第二空:阶乘的算法是,当n>1时,n!=n*(n-1)!,即fun(n)=n*fun(n-1)。第三空:n==1是递归的终止条件,因为1!=1,所以当n=1时,返回1。

  • 第14题:

    若要在程序文件中使用标准输入和输出函数,则需要引入的系统头文件为stdio.h。()

    此题为判断题(对,错)。


    正确答案:√

  • 第15题:

    请将以下程序中的函数声明语补充完整。 include int【】 main(){int x,y,(*p)(); sccanf("

    请将以下程序中的函数声明语补充完整。

    include<stdio.h>

    int【 】

    main()

    { int x,y,(*p)();

    sccanf("%d%d",&x,&y);

    p=max;

    printf(%d\n",(*p)(x,y));

    }

    int max(int a,int b)

    {return(a>b?a:b);}


    正确答案:max(int aint b)
    max(int a,int b) 解析:在C语言中,除了主函数外,对于用户定义的函数都遵循“先定义,后使用”的规则,若把函数定义放在调用之后,应该在调用之前对函数进行说明(或称为函数原型说明)。
    函数的说明形式为:
    类型名 函数名(参数类型1,参数类型2……)
    本题是通过max()函数来求出a和b中较大的数,由于max()函数的位置在main()函数之后,想要在main()函数中调用max()函数,就必须先在main()函数之前对max()函数进行说明,因为当在所有函数外部、被调用之前说明函数时,在对函数进行说明的语句后面所有位置上都可以对该函数进行调用。所以,在横线上应该填上被调函数的说明语句即 max(int a,int b) 。

  • 第16题:

    请编写函数fun(),它的功能是计算:s=(1-In(1)-In(2)-In(3)-…-1n(m))2

    s作为函数值返回。

    在C语言中可调用log(n)函数求In(n)。log函数的引用说明是double log(double x)。

    例如,若m的值为15,则fun()函数值为723.570801。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

    试题程序:

    include <conio.h>

    include <stdio.h>

    include <math.h>

    double fun(int m)

    {

    }

    main()

    {

    clrscr();

    printf("%f\n",fun(15));

    }


    正确答案:double fun(int m) {   int i; double s=1.0; for(i=1;i=m;i++) s=s-log(i); /*计算s=l-In(1)-In(2)-In(3)-…-In(m)*/ return (s*s); /*对s求平方并返回*/ }
    double fun(int m) {   int i; double s=1.0; for(i=1;i=m;i++) s=s-log(i); /*计算s=l-In(1)-In(2)-In(3)-…-In(m)*/ return (s*s); /*对s求平方并返回*/ } 解析:首先,题目要求计算1依次减去1到M的对数,可用从1到M的循环,每次循环都减一个数的对数。该题需要注意,log()函数的形式参数应浩如烟海double型变量,用于循环的基数变量为整数,需要进行强制转换。最后在返回的时求平方。

  • 第17题:

    请补充函数fun(char *s),该函数的功能是把字符串中的内容逆置。

    例如:字符串中原有的字符串为abcde,则调用该函数后,串中的内容变为edcba。

    注意;部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。

    试题程序:

    $include<string.h>

    include<conio.h>

    include<stdio.h>

    define N 81

    void fun(char*s)

    {

    int i=0,t,n=strlen(s);

    for(;【 】;i++)

    {

    t=*(s+i);

    【 】;

    【 】;

    }

    }

    main()

    {

    char a[N];

    clrscr();

    printf("Enter a string:");

    gets(a);

    printf("The original string is:");

    puts(a);

    fun(a);

    printf("\n");

    printf("The string after modified:");

    puts(a);

    }


    正确答案:in/2或s+is+n-1-i或in-1-I *(s+i)=*(s+n-1-i) *(s+n-1-i)=t
    in/2或s+is+n-1-i或in-1-I *(s+i)=*(s+n-1-i) *(s+n-1-i)=t 解析:第一空:将字符串的内容逆置,实际上就是将第一个字符和最后一个字符交换,再将第二个字符与倒数第二个字符交换,依此类推,直到中间的字符为止。所以,长度为n的字符串需要交换的次数为n/2。还可以这样理解,交换时始终保持顺数的字符在倒数的字符前面。第二空:顺数第i个字符为*(s+i),倒数第i个字符为*(s+n-1-i)。第三空:掌握利用第三个变量进行变量交换的方法。本题中,第三个变量为t。

  • 第18题:

    下面程序段的输出为( )。 include "stdio.h" main { printf("%d\n",12<<2); }A.0SXB

    下面程序段的输出为( )。 #include "stdio.h" main { printf("%d\n",12<<2); }

    A.0

    B.47

    C.48

    D.24


    正确答案:C
    本题考查位运算的运算原理。<<为左移运算符,运算符的左边是移位对象;右边是整型表达式,代表左移的位数,左移时,右端(低位)补0;左端(高位)移出的部分舍弃。

  • 第19题:

    下列给定程序中,函数fun的功能是按以下递归公式求函数值。

    例如:当给n输入5时,函数值为240;当给n输入3时,函数值为60。

    请改正程序中的错误,使它能得到正确结果。

    注意;不要改动main函数,不得增行或删行,也不得更改程序的结构。

    试题程序:

    include <stdio.h>

    /*************found****+*******/

    fun(int n);

    {

    int c;

    /*************found********+*****/

    if(n=1)

    c=15;

    else

    c=fun(n-1)*2;

    return(c);

    }

    main()

    {

    int n;

    printf("Enter n:");

    scanf("%d",&n);

    printf("The result:%d\n\n",fun(n));

    }


    正确答案:(1)错误:fun(int n); 正确:fun(int n) (2)错误:if(n=1) 正确:if(n==1)
    (1)错误:fun(int n); 正确:fun(int n) (2)错误:if(n=1) 正确:if(n==1) 解析:错误1:该行是函数的首部,不是一条语句,因此不能以分号结束。错误2:if垢面应该紧跟一个条件判断表达式,若写成“if(n=1)”,则说明该表达式的值永远为真,也就是说这个条件永远成立,没有递归执行。

  • 第20题:

    在一个程序文件中,若要使用#include命令包含一个用户定义的头文件,则此头文件所使用的起止定界符为一对()。

    A尖括号

    B双引号

    C单引号

    D花括号


    B

  • 第21题:

    getchar函数的原型声明包括在头文件()中

    • A、string.h
    • B、math.h
    • C、conio.h
    • D、stdio.h

    正确答案:D

  • 第22题:

    使用putchar函数时,必须在之前包含头文件stdio.h


    正确答案:正确

  • 第23题:

    填空题
    在一个C语言程序文件中,若要包含另外一个头文件或程序文件,则应使用的预处理命令为()。

    正确答案: #include
    解析: 暂无解析

  • 第24题:

    单选题
    在源程序的开始处加上“#include”进行文件引用的原因,以下叙述正确的是(  )。
    A

    stdio.h文件中包含标准输入输出函数的函数说明,通过引用此文件以便能正确使用prinff、scanf等函数

    B

    将stdio.h中标准输入输出函数链接到编译生成的可执行文件中,以便能正确运行

    C

    将stdio.h中标准输入输出函数的源程序插入到引用处,以便进行编译链接

    D

    将stdio.h中标准输入输出函数的二进制代码插入到引用处,以便进行编译链接


    正确答案: D
    解析:
    “stdio.h”文件中包含标准输入输出函数的函数说明,预处理指令#include<stdio.h>是指程序可以在该文件中找到printf,scanf等函数,答案选择A选项。