重要提示:请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
首页 > 大学专科> 电子信息
网友您好,请在下方输入框内输入要搜索的题目:
搜题
拍照、语音搜题,请扫码下载APP
扫一扫 下载APP
题目内容 (请给出正确答案)
[主观题]

该程序检查由#define所定义的文本文件中花括号是否配对。函数check完成检测功能,所遵循的原则如下。 ①检测过

该程序检查由#define所定义的文本文件中花括号是否配对。函数check完成检测功能,所遵循的原则如下。

①检测过程中,不能出现右花括号“}”个数多于左花括号“{”个数,如果该情况发生,则返回-1。

②整个文件检测完成后,若右花括号“}”个数等于左花括号“{”个数,则返回0,否则返回1。

③检测的行数记录在n所指向的变量中。

#include<stdio.h>

#define file "c:\\bc31\\bin\\match.c"

int check(FILE*, int*)

void main()

{ int line;

FILE*fp=fopen(______);

switch(check(______))

{case 0:printf("file%s match correctly\n",file); break;

case 1:printf("file%s missing)on%d line\n",file,line);break;

case-1:printf("file%s missing{on%d line\n",file,line }; break;

}

fclose(fp);

}

int check(FILE*fp, int*n)

{ int left=0, right=0,line=0;

char c;

while((c=fgetc(fp))!=EOF)

{ if(c=='{')

left++;

else if(c=='}')

right++;

else if(c=='\n')

*n=++line;

if(______)

return -1;

}

return______;

}

答案
查看答案
更多“该程序检查由#define所定义的文本文件中花括号是否配对。函数check完成检测功能,所遵循的原则如下。 ①检测过”相关的问题

第1题

以下叙述中正确的是()。

A. 使用#define 可以为常量定义一个名字,该名字在程序中可以再赋另外的值

B. 使用 const 定义的常量名有类型之分,其值在程序运行时是不可改变的

C. 在程序中使用内联函数使程序的可读性变差

D. 在定义函数时可以在形参表的任何位置给出缺省形参值

点击查看答案

第2题

以下程序中用户由键盘输入一个文件名,然后输入一串字符(用$结束输入)存放到此文件中,形成文本文

以下程序中用户由键盘输入一个文件名,然后输入一串字符(用$结束输入)存放到此文件中,形成文本文件,并将字符的个数写到文件尾部。请填空。 include <string.h> main() { FILE*fp: char ch,fname[32] int count=0: prinft("input the filename:"): scanf("%s",fname); if((fp=fopen(______,"w+"))==NULL) { printf("cant open file:%s\n",fname); exit(0): } printf("enter data:\n"): while((ch=getchar())!=$) {fputc(ch,fp): count++; } fprintf(______,"\n%d\n", count); fclose(fp): }

点击查看答案

第3题

若定义define PI 3.14159,则执行完下列程序后输出结果是______。 define PI 3.14159;printf("

若定义define PI 3.14159,则执行完下列程序后输出结果是______。 define PI 3.14159;printf("PI=%P",PI);

点击查看答案

第4题

设有如下宏定义 #define MYSWAP(z,x,y) {z=x;x=y;y=z;} 以下程序段通过宏调用实现变量a、b内容交换,请填空

设有如下宏定义

#define MYSWAP(z,x,y) {z=x;x=y;y=z;}

以下程序段通过宏调用实现变量a、b内容交换,请填空。

float a=5,b=16,c;

MYSWAP(______,a,b);

点击查看答案

第5题

C语言中,符号常量由宏定义命令#define来定义()
点击查看答案

第6题

移动文本是使用剪切板,即先选中文本,在单击剪切]命令,然后把光标移动到需要放置该本文的位置并单击[粘贴]命令。()
点击查看答案

第7题

设有如下宏定义 #defineMYSWAP(z,x,y) {z=x;x=y;y=z;} 以下程序段通过宏调用实现变量a,

设有如下宏定义

#define MYSWAP(z,x,y)

{z=x;x=y;y=z;}

以下程序段通过宏调用实现变量a,b内容交换,请填空。

float a=5,b=16,c;

MYSWAP((),a,b);

点击查看答案

第8题

由上到下,由里到外,由前到后是人身检查的()。A.方法B.程序C.定义D.步骤

由上到下,由里到外,由前到后是人身检查的()。

A.方法

B.程序

C.定义

D.步骤

点击查看答案

第9题

下面程序由两个源程序文件:t4.h和t4.c组成,程序编译运行的结果是:【 】。 t4.h 的源程序为: d
efine N 10 denne f2(x) (x*N) t4.c 的源程序为: include <stdio. h> define M 8 define f(x) ((x)*M) include "t4.h" main() { int i, j; i=f(1+1); j=f2(1+1); printf(%d%d\n",i, j); }

点击查看答案

第10题

函数 1.实验目的 ①掌握定义函数的方法。 ②掌握函数实参与形参的对应关系以及“值传递”的方式。 ③掌握甬数

函数

1.实验目的

①掌握定义函数的方法。

②掌握函数实参与形参的对应关系以及“值传递”的方式。

③掌握甬数的嵌套调用和递归调用的方法。

④掌握全局变量和局部变量、动态变量和静态变量的概念和使用方法。

⑤学习对多文件程序的编译和运行。

2.实验内容

编程序并上机调试运行。

①已有变量定义和函数调用语句int a=1,b=-5,c; c=fun(a,b);fun函数的作用是计算两个数之差的绝对值,并将差值返回调用函数,请编写fun函数。

Fun(int x,int y)

{ }

②有函数调用语句c=add(a,b);请编写add函数,计算两个实数a和b的和,并返回和值。

double add(double x,double y)

{ }

③利用递归方法求5!。

④利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

⑤有5个人坐在一起,问第五个人的岁数,他说比第四个人大2岁。问第四个人岁数,他说比第三个人大2岁。问第三个人,叉说比第二个人大两岁。问第二个人,又说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?

程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人的岁数,就需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。

⑥以下程序运行后输入:3,abcde<回车>,则输出结果是______。

#include

move(char*str,int n)

{char temp;int i;

temp=sTR[n-1];

fOr(i=n-1;i>0;i--)str[i]=str[i-1];

str[0]=temp;

}

main()

{chaR s[50];int n,i,z;

scanf("%d,%s",&n,&s);

z=strlen(s);

for(i=1;i<=n;j++)

move(s,z);

printf("%s\n",s);

}

⑦编写函数求:1-1/2+1/3-1/4+1/5-1/6+1/7-…1/n

⑧编程输出如下图形,

函数  1.实验目的  ①掌握定义函数的方法。  ②掌握函数实参与形参的对应关系以及“值传递”的方式即一个由*组成的正六边形,注意是空心的。

3.理解变量的作用范围

①学习static定义静态变量的用法。

#include"stdio.h"

varfunc()

{

int var=0;

static int static_var=0;

printf("\40:var equal%d\n",var);

printf("\40:static var equal%d\n",static_var);

printf("\n");

var++;

static_var++;

}

voidmain()

{inti;

for(j=0;i<3;i++)

varfunc();

}

②学习使用auto定义变量的用法。

#include"stdio.h"

main()

{inti,num;

num=2;

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

{ printf("\40:The num equal%d\n",num);

num++;

{

auto int num=1;

printf("\40:The internal block num equal%d\n",num);

num++;

}

}

}

③学习使用static的另一用法。

#include"stdio.h"

main()

{

inti,num;

num=2

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

{

printf("\40:The hum equal%d\n",num);

num++;

{

static int num=1;

printf("\40:The internal block hum equal%d\n",hum);

num++;

}

}

}

④学习使用external的用法。

#include"stdio.h"

int a,b,c;

void add()

{int a;

a=3;

c=a+b

}

voidmain()

{ a=b=4;

add();

printf("The value of c is equal to%d\n",c);

}

⑤学习使用register定义变量的方法。

voidmain()

{

register int i;

int tmp=0:

for(i=1;i<=100;i++)

tmp+=i;

printf("The sum is%dha",tmp);

}

(6)宏#define命令练习(1)

#include"stdio.h"

#defineTRUE 1

#define FALSE 0

#define SQ(x)(x)*(x)

voidmain()

{

int num;

int again=1;

printf("\40:Program will stop if input value less than 50.\n");

while(again)

{

printf("\40:Please input number==>");

scanf("%d",&num);

printf("\40:The square for this number is%d\n",SQ(num));

if(num>=50)

again=TRUE;

else

again=FALSE;

}

}

点击查看答案
下载APP
关注公众号
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案 购买前请仔细阅读《购买须知》
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《服务协议》《购买须知》
立即支付 系统将自动为您注册账号
已付款,但不能查看答案,请点这里登录即可>>>
请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
请用微信扫码测试
优题宝