当前位置: 首页 > news >正文

网站开发流程指什么流感用什么药最好

网站开发流程指什么,流感用什么药最好,永州网站建设哪里有,网站商城开发一个多少钱在录入程序时有时稍不注意就可能录入错误的字符导致程序运行结果出现错误&#xff0c;下面举例说明。 下面程序的运行结果是错的&#xff0c;但程序又没有错&#xff0c;到底问题出现在哪呢&#xff1f; #include <stdio.h> int main() {FILE *fp;int i, k, n;fpfopen(…

在录入程序时有时稍不注意就可能录入错误的字符导致程序运行结果出现错误,下面举例说明。

下面程序的运行结果是错的,但程序又没有错,到底问题出现在哪呢?

#include <stdio.h>
int main()
{FILE *fp;int i, k, n;fp=fopen("data.dat", "w+");for(i=1; i<6; i++)  {fprintf(fp,"%d ",i);if(i%3==0) {fprintf(fp,"\n");}}rewind(fp);fscanf(fp, "%d%d",&k,&n);printf("%d %d\n",k,n);fclose(fp);return 0;
}

程序运行结果是:

图片

并且在不同的机器上运行的结果可能不同,例如结果可能是:

1   20

1   -858993460

检查程序,也没有看出问题来,打开文件的方式是"w+",这意味着对一个文本文件进行读写,如果打开文件时文件不存在,则创建,否则打开已存在文件,截断所有内容,从头再写,然后可以读。

百思不得其解,后来对fprintf(fp,"%d ",i);进行查看,无意间发现光标在移过空格时和平时的印象不一样,仔细分析,发现了问题,此处的字符“ ”不是空格字符“ ”。那么“ ”到底是什么?我们把它拿出来,编写程序看看它的原形,程序如下:


#include <stdio.h>
#include <string.h>
int main()
{char str[]={" "};int len=strlen(str); printf("len=%d\n",strlen(str));for(i=0; i<len; i++) {printf("%2x ",str[i]&0xff );}printf("\n");return 0;
}

运行结果如下图所示。

图片

该字符长度为2,这两个字节值都是0xa1,它中文语境中用它来作为空格的,有的中文输入法,在输入空格时,可能用它代替空格。

问题找到了,用空格' '替换' ',程序运行结果正确,输出结果是:

1  2

在实训中,我们同样遇到一个类似的错误,程序如下:


/* 编写函数:用来判断一个整数是否满足"用3除余1,用5除余3,用7除余4”,满足则返回1,不满足返回0,然后编写main函数,输入范围m和n,通过调用该函数显示出m~n之间满足该条件的数。
*/ 
#include <stdio.h>
int fun(int s, int t) 
{for(int i=s; i<=t; i++) {if(i%3==1 && i%5==3 && i%7==4) {return i; }         }return -1;
}
int main()
{int s,t,num;scanf("%d,%d",&s,&t);do {num = fun(s,t);if (num>=0){printf("%d ",num);} s=num+1;}while(num>=0);   return 0;
}

显然,这个结果与我们预想的不一样,为什么?

在第19行要求输入数据时以逗号为分隔符,我们在输入数据时也是用逗号作为分隔符的,为什么错呢?

细心观察输入逗号,发现它非常的圆润,不像西文的逗号,问题是不是它呢?再次运行,结果正确了。

图片

可见,在输入时也需要区分中西文符号的不同。

如何避免这个问题的出现呢?

一种方法就是在scanf中不要使用分隔符,在输入数据时用空白符作为分隔符录入数据,因此,第19行改为scanf("%d%d",&s,&t); 就可以避免这类错误。

第二种方法,在输入时进行判断,如果没有接收到正确的输入,那就再次输入。

第19行的语句用下面的语句块替代:

while (scanf("%d,%d",&s,&t)!=2) {

      printf("Input error, try again.\n");

      while(getchar()!='\n');

参考文献:

[1]李红卫,李秉璋. C程序设计与训练(第四版)[M],大连,大连理工大学出版社,2003.

[2]https://pan.baidu.com/s/17ZXphwqySNIsIgcGtYMjvg?pwd=lhwc

http://www.ds6.com.cn/news/43905.html

相关文章:

  • 企业网站快照更新seo实战培训教程
  • 网站建设一个购买链接seo人才
  • 能打开国家禁止网站的浏览器软文网站有哪些
  • 大气html5网络公司网站源码盘古百晋广告营销是干嘛
  • 罗湖网站建设报价百度代理公司查询
  • 站长要维护网站攀枝花seo
  • 品牌网站首页设计怎么做好市场宣传和推广
  • 网站建设分析从哪几个方面优化方案电子版
  • 美食网页设计模板中文广州软件系统开发seo推广
  • 做前端网站用什么软件写代码吗巨量数据分析入口
  • 网站建设报价单 非常好用的报价模板.doc2345网址导航删除办法
  • wordpress同标题关键字页面优化的方法
  • 自助式网站制作seo刷点击软件
  • 网站导航广告怎么做seo效果最好的是
  • 做网站的启蒙思想网站标题优化排名
  • 菜鸟做网站泰安百度推广代理
  • 网站的整合竞价排名服务
  • 网站空间的申请律师推广网站排名
  • 东莞公司网站怎么做视频seo优化教程
  • 网站建设商城模板百度快照怎么优化排名
  • 加强网站信息建设方案网店推广培训
  • 上海网站优化排名品牌营销策划方案范文
  • 深圳网站建设 cms最好用的免费建站
  • 网站制作岗位职责外包项目接单平台
  • 绵阳口碑最好的装修公司杭州排名优化软件
  • 做网站找那些公司app注册推广平台
  • wordpress设置瀑布流优化网站广告优化
  • 多元网站建设软文标题
  • 网站建设空间一般多大百度云电脑网页版入口
  • ps软件下载官网网络优化工程师是做什么的