导航:网站首页 >

DEV-C++中编写了一段C程序,其中设置了用文件进行... 请编一个程序,可以将英语规则名词由单数变成复数...

DEV-C++中编写了一段C程序,其中设置了用文件进行... 请编一个程序,可以将英语规则名词由单数变成复数...

相关问题:

匿名网友:

C语言输入输出函数有很多,标准I/O函数中包含了如下几个常用的函数:

标准输入输出:

1. scanf, printf

int scanf(const char *format, arg_list)

scanf主要从标准输入流中获取参数值,format为指定的参数格式及参数类型,如scanf("%s,%d",str,icount);

它要求在标准输入流中输入类似"son of bitch,1000"这样的字符串,同时程序会将"son of bitch"给str,1000给icount。

scanf函数的返回值为int值,即成功赋值的个数,在上例中如果函数调用成功,则会返回2,所以我们在写程序时,可以通过语句

if( scanf("%s,%d",str,icount) != 2)

{

...

}

来判断用户输入是否正确.

例子:

#include

#include

int main()

{

printf("Input Data:\n");

char str[64];

int num;

scanf("%s,%d", str, &num);

printf("%s,%d", str, num);

return 0;

}

Input Data:

nihao,1

nihao,1,2009091631

此处将","当做了与前面的nhao以及1一起的字符串。注意scanf时,是以空格,制表符以及回车作为变量之间的分割的。

因此在使用scanf时尽量采用这几个作为分割标记。而不要像scanf("%s,%d", str, &num);,它无法正确输入数据。

int printf(const char *format, arg_list)

printf主要是将格式化字符串输出到标准输出流中,在stdio.h头文件中定义了标准的输入和输出,分别是stdin,stdout。

arg_list可以是变量名,也可以是表达式,但最终都会以值的形式填充进format中

格式化输入输出:

1. 格式控制

格式控制是用双引号括起来的字符串,也称"转换控制字符串",它包含以下两部分信息。

格式说明:由"%"和格式字符组成,如%d,%f,%c,它的作用是把输出数据转换为指定格式输出,格式的说明总是由"%"字符开始的.

普通字符:需要原样输出的字符,或者是一些有特殊含义的字符,如\n,\t。

\n 换行

\f 清屏并换页

\r 回车

\t Tab符

\xhh 表示一个ASCII码用16进表示,其中hh是1到2个16进制数

2. 输出列表

就是需要输出的一些数据,也可以是表达式,如果在函数中需要输出多个变量或表达式,则要用逗号隔开。

一些特殊字符的输出:

单引号,双引号,和反斜杠的输出在前面加转义字符”\”,如:"\’", "\"", "\\"。

% 的输出用两个连在一起的%%,即 printf(“%%”);

常用的格式说明如下:

格式字符

d 以十进制形式输出带符号整数(正数不输出符号)

o 以八进制形式输出无符号整数(不输出前缀0)

x 以十六进制形式输出无符号整数(不输出前缀0x)

u 以十进制形式输出无符号整数

f 以小数形式输出单精度实数

lf 以小数形式输出双精度实数

e 以指数形式输出单、双精度实数

g 以%f,%e中较短的输出宽度输出单、双精度实数

c 输出单个字符

s 输出字符串

特殊:

对64位整数的输入输出,在POJ上的C++环境下(即VC),64位整数是:

__int64 (注意int前面是两个下划线),输入输出格式为”%I64d”.

在G++环境下(即Dev C++) 64位整数是

long long 输入输出格式为”%lld”.

输出宽度

用十进制整数来表示输出的最少位数。注意若实际位数多于定义的宽度,则按实际位数输出,若实际位数少于定义的宽度则补以空格或0。

可以在"%"和字母之间插进数字表示最大宽度。

%9.2f 表示输出场宽为9的浮点数,其中小数位为2,整数位为6,小数点占一位,不够9位右对齐。

%8s 表示输出8个字符的字符串, 不够8个字符右对齐。

如果字符串的长度,或整型数位数超过说明的场宽,将按其实际长度输出。

但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;

若小数部分位数超过了说明的小数位宽度,则按说明的宽度以四舍五入输出。

另外,若想在输出值前加一些0, 就应在场宽项前加个0。

例如: d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度为4位。

如果用浮点数表示字符或整型量的输出格式,小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。

例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9,则第9个字符以后的内容将被删除。

精度

精度格式符以"."开头,后跟十进制整数。意义是:如果输出数字,则表示小数的位数;如果输出的是字符,则表示输出字符的个数;

若实际位数大于所定义的精度数,则截去超过的部分。

标志格式字符

- 结果左对齐,右边填空格

+ 输出符号(正号或负号)空格输出值为正时冠以空格,为负时冠以负号

例如:

double c = 24212345.24232;

printf(“%020.4”); 表示输出精确到小数点后4位,输出占20位,若有空余的位补0。

2. getc,putc

int getc(FILE *fp)

getc主要是从文件中读出一个字符.常用的判断文件是否读取结束的语句为:(ch = getc(fp)) != EOF。EOF为文件结束标志,

定义在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定义在stdlib.h中一样,文件也可以被理解为一种流,所以当fp为stdin时,

getc(stdin)就等同于getchar()了.

int putc(int ch,FILE *fp)

putc主要是把字符ch写到文件fp中去。如果fp为stdout,则putc就等同于putchar()了。

#include

#include

int main()

{

FILE * fp = fopen("tmp.txt", "w+");

putc('a', fp);

fflush(fp);

fclose(fp);

fp = fopen("tmp.txt", "r+");

int c = getc(fp);

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

fclose(fp);

int ch = getc(stdin);

putc( ch, stdout);

putc( '\n', stdout);

putc('a', stdout);

return 0;

}

3. getchar,putchar

int getchar(void)

getchar()主要是从标准输入流读取一个字符。默认的标准输入流即stdio.h中定义的stdin。但是从输入流中读取字符时又

涉及到缓冲的问题,所以并不是在屏幕中敲上一个字符程序就会运行,一般是通过在屏幕上敲上回车键,然后将回车前的字符

串放在缓冲区中,getchar() 就是在缓冲区中一个一个的读字符。当然也可以在while循环中指定终止字符,如下面的语句:

while ((c = getchar()) != '#')

这是以'#'来结束的。

int putchar(int ch)

putchar(ch)主要是把字符ch写到标准流stdout中去.

#include

#include

int main()

{

int n;

while((n = getchar()) != '#')

{

putchar((char)n);

}

return 0;

}

4. gets,puts

char * gets(char *str)

gets() 主要是从标准输入流读取字符串并回显,读到换行符时退出,并会将换行符省去。

返回值为获得的字符串的首地址,实现链接操作。

int puts(char *str)

puts() 主要是把字符串str写到标准流stdout中去,并会在输出到最后时添加一个换行符。

返回值为0表示正常,非零表示错误

#include

#include

int main()

{

char str[256];

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

int ret = puts(str);

printf("len: %d\n", ret);

return 0;

}

匿名网友:

1.DEV-C++中编写了一段C程序,其中设置了用文件进行...

问:当运行后能够看到输出的文件:data,但是因为没有输入数据,所以结果不正...

2.请编一个程序,可以将英语规则名词由单数变成复数...

问:已知规则如下: (a)以辅音字母y结尾,则将y改成i,再加es; (b)以s...

3.帮我编写一个学生成绩评定的VB 程序

问:班上有50名学生,编程完成学生成绩评定工作,同时统计各等级的人数 * 注...

4.编写了一段搜索程序,无法正常运行,求助各位大神

答:参考下面链接

5.如何成为一个程序员

问:我对编程一点不懂,想从零开始成为程序员,怎么办

6.我在eclipse编写java程序,为什么运行结果是之前令...

答:肯定是两个类同名了,而你又没有编译,所以就会用上一个编译出来的class文件,所以结果就是上一个程序的结果了啊 用右键-------Run as ----Java Application 方法运行就行了

7.编写好了一段C++程序,怎么来运行他

答:可以按F11编译运行

8.一个C语言中time函数的问题,我编写了一个小程序cl...

问:#include #include void main() { int i; clock_t end...

9.有谁能帮我编一段程序啊,c++,很简单的貌似,感谢

答:试试行不?#include int main() {char n[11];char n2[11];int i,j;scanf(%s,n);for(i=0,j=0;i=0;--j){printf(%c,n[j]);}return 0;}

10.用C++编一个程序,输入球的半径求一个球的表面积,...

问:很急啊

问题推荐

c语言 单词变复数_DEV-C++中编写了一段C程序,其中设置了用文件进行... 请编一个程序,可以将英语规则名词由单数变成复数......相关推荐

  1. 请编一个程序,可以将英语规则名词由单数变成复数。要求用键盘键入英语规则名词,屏幕输出该名词的复数形式。

    题目描述 请编一个程序,可以将英语规则名词由单数变成复数.已知规则如下: 源码 #include<iostream> #include<string> using namesp ...

  2. C语言编程>第七周 ⑧ 请编一个函数void fun(int a[M][N],int b[N]),c指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入b所指一维数组中。

    例题:请编一个函数void fun(int a[M][N],int b[N]),c指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入b所指一维数组中.二维数组中的数己在主函数中赋予. ...

  3. LSM树——LSM 将B+树等结构昂贵的随机IO变的更快,而代价就是读操作要处理大量的索引文件(sstable)而不是一个,另外还是一些IO被合并操作消耗。...

    Basic Compaction 为了保持LSM的读操作相对较快,维护并减少sstable文件的个数是很重要的,所以让我们更深入的看一下合并操作.这个过程有一点儿像一般垃圾回收算法. 当一定数量的ss ...

  4. 编一个程序,读入用户输入的,以“.”结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。

    题目描述: 编一个程序,读入用户输入的,以"."结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符. (凡是以一个或多个空格隔开的部分就为一个单词) 输入: 输 ...

  5. Win7-其中的文件夹或文件已在另一个程序中打开

    Win7-其中的文件夹或文件已在另一个程序中打开 如何解决Win7系统在删除或移动文件时提示,"操作无法完成,因为其中的文件夹或文件已在另一个程序中打开,请关闭该文件夹或文件,然后重试&qu ...

  6. 13.请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。

    13.请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中.二维数组中的数已在主函数中 ...

  7. 文件夹或文件已在另一个程序中打开,解决办法

    在删除某一文件时,总会遇到一个提示:"操作无法完成,文件夹或文件已在另一个程序中打开",但又不清楚文件在哪里打开或者把文件全部关闭仍旧如此提示,此时,可试试下面的解决方法. 打开' ...

  8. 操作无法完成因为其中的文件夹或文件已在另一个程序中打开怎么解决

    有不少朋友们在操作系统的时候,无法继续进行下一步操作.系统提示操作无法完成,因为其中的文件夹或文件已在另一个程序中打开.这种时候应该如何解决这个问题呢?今天小编就来给大家详细说明一下吧. 具体步骤如下 ...

  9. 删除某一文件夹或文件时,提示“操作无法完成,因为其中的文件夹或文件已在另一个程序中打开”

    目录 1 问题 2 解决方法 2.1 方法一 2.2 方法二(推荐) 1 问题 有时候在删除文件夹或文件时,总是删不掉,并提示"操作无法完成,因为其中的文件夹或文件已在另一个程序中打开&qu ...

最新文章

  1. 生态统计学里的数据转化与标准化
  2. 安义县农业结构调整-农业大健康·林裕豪:从玉农业谋定基地
  3. 基于SegNet和UNet的遥感图像分割代码解读
  4. 【转】03.Dicom 学习笔记-DICOM C-Get 消息服务
  5. 1057: [ZJOI2007]棋盘制作 - BZOJ
  6. Linux操作系统原理与应用08:文件系统
  7. 火星人谚语系列之三:正确的答案一定简单
  8. 3lcd和dlp怎么选,DLP和3LCD投影机的选择对比
  9. paip.函数式编程方法概述以及总结
  10. 快门(曝光时间)、光圈、感光度(ISO)的关系
  11. openssl官网-下载安装过程
  12. 笔记7.28 数据库经典问题
  13. 不看后悔!阿里内部技术参考图册算法篇!(附网盘链接)
  14. 智能叉车AGV小车车载系统功能特点
  15. html实现下拉跳转
  16. 数学建模微分方程导弹问题matlab求解,数学建模之微分方程(符实现例题和MATLAB源码)...
  17. Netconf配置及其RPC和Notification下发流程解析
  18. matlab 画梯形,转向梯形优化设计matlab程序
  19. mysql odbc桥_jdbc-odbc桥连接数据库
  20. 缘系天涯,一枕残梦千里

热门文章

  1. Python实现连接Mysql数据库实现增删改查
  2. 如何解决word文档打开总是显示修订状态问题
  3. 微信小程序第三方开发需要注意的点
  4. RK3399 CPU锁频
  5. iOS App崩溃日志分析
  6. python之Turtle 画星星和樱花
  7. 计算机专业技术考核表,专业技术人员量化考核计分表(3类).doc
  8. 6种PPT制作小技巧
  9. 什么样的电销话术可以让客户不反感,不挂断,不投诉,还可以成交
  10. 苹果x屏幕出现一条绿线_苹果屏幕出现条纹换屏幕有用吗?检测过后才恍然大悟!_...