文档库 最新最全的文档下载
当前位置:文档库 › 应用程序中显示printf语句的内容

应用程序中显示printf语句的内容

应用程序中显示printf语句的内容
应用程序中显示printf语句的内容

一般printf语句在控制台显示出打印(调试)的内容,但是如何在Application中显示printf语句的内容呢?

这里一般需要将控制台打开后,才能将printf语句的内容显示在控制台中。

我写了一个Debug类,应该能达到你的效果。用法很简单,包含头文件后,在需要的地方使用:Debug.Print(<参数>)即可,参数用法跟printf相同。

debug.h:

-------------------

//---------------------------------------------------------------------------

#ifndef debugH

#define debugH

#include

#include

//---------------------------------------------------------------------------

class CDebug

{

public:

inline ~CDebug();

void Print(const char *prompt, ...);

static CDebug &GetInstance();

private:

static CDebug s_debug;

HANDLE m_StdOut;

inline CDebug();

};

extern CDebug Debug;

#endif

-----------------------------------

debug.cpp:

----------------------

//---------------------------------------------------------------------------

#include

#pragma hdrstop

#include "debug.h"

//---------------------------------------------------------------------------

CDebug CDebug::s_debug;

CDebug Debug = CDebug::GetInstance();

inline CDebug::CDebug()

{

AllocConsole();

m_StdOut = GetStdHandle(STD_OUTPUT_HANDLE);

}

inline CDebug::~CDebug()

{

FreeConsole();

}

inline CDebug &CDebug::GetInstance()

{

return s_debug;

}

void CDebug::Print(const char *prompt, ...) {

DWORD w;

char * buf = NULL;

int size = 0;

int i = 0;

va_list args;

int rc;

va_start (args, prompt);

do {

size += 1000;

if (buf)

{

delete[] buf;

buf = NULL;

}

buf = new char[size];

i = vsnprintf (buf, size, prompt, args);

} while (i == size);

va_end(args);

WriteFile(m_StdOut, buf, strlen(buf), &w, NULL);

if (buf)

{

delete[] buf;

buf = NULL;

}

}

#pragma package(smart_init)

------------------------------------

demo程序的运行效果如下:

C语言输入输出函数printf与scanf的用法格式

C 语言输入输出函数printf 与scanf 的用法格式 printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入设备(键盘)上读数据。下面详细介绍这两个函数的用法。 一、printf()函数 printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。printf()函数的调用格式为: printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式控制字符, 以"%"开始, 后跟一个或几个控制字符,用来确定输出内容格式。 参量表是需要输出的一系列参数,可以是常量、变量或表达式,其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想不到的错误。 例如: printf("a=%d b=%d",a,b); 1. 格式控制符Turbo C 2.0提供的格式化规定符如下: 格式控制字符 参量表 正常字符

━━━━━━━━━━━━━━━━━━━━━━━━━━ 符号作用 ────────────────────────── %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e,%E 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %o 无符号以八进制表示的整数 %g,%G 自动选择合适的表示法 ━━━━━━━━━━━━━━━━━━━━━━━━━━ printf的附加格式说明字符 字符说明 l 用于长整型数或双精度实型,可加在格式 符d、o、x、u和f前面 m(代表一个正整数据最小输出显示宽度

c语言printf()输出格式

c语言printf()输出格式大全 1.转换说明符 %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和doulbe) %e(%E) 浮点数指数输出[e-(E-)记数法] %g(%G) 浮点数不显无意义的零"0" %i 有符号十进制整数(与%d相同) %u 无符号十进制整数 %o 八进制整数 e.g. 0123 %x(%X) 十六进制整数() e.g. 0x1234 %p 指针 %s 字符串 %% "%" 2.标志 左对齐:"-" e.g. "%-20s" 右对齐:"+" e.g. "%+20s" 空格:若符号为正,则显示空格,负则显示"-" e.g. "% " #:对c,s,d,u类无影响;对o类,在输出时加前缀o;对x类,在输出时加前缀0x; 对e,g,f 类当结果有小数时才给出小数点。 3.格式字符串(格式) [标志][输出最少宽度][.精度][长度]类型 "%-md" :左对齐,若m比实际少时,按实际输出。 "%m.ns":输出m位,取字符串(左起)n位,左补空格,当n>m or m省略时m=n e.g. "%7.2s" 输入CHINA 输出" CH" "%m.nf":输出浮点数,m为宽度,n为小数点右边数位 e.g. "%" 输入3852.99 输出3853.0 长度:为h短整形量,l为长整形量 printf的格式控制的完整格式: % - .n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少。

C语言IO--printf右对齐补零

C语言IO--printf右对齐补零 关于printf的一点总结,内容来自https://www.wendangku.net/doc/2216051158.html,/s/blog_5ac88b350100auna.html 1.1 标准输入输出函数 1.1.1 格式化输入输出函数 Turbo C2.0 标准库提供了两个控制台格式化输入、输出函数printf( ) 和 scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。 printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入 设备(键盘)上读数据。下面详细介绍这两个函数的用法。 一、printf()函数 printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出 信息。在编写程序时经常会用到此函数。printf()函数的调用格式为: printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原 样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确定输出内容格式。 参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出 参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想 不到的错误。 1. 格式化规定符 Turbo C2.0提供的格式化规定符如下: ━━━━━━━━━━━━━━━━━━━━━━━━━━ 符号作用 ────────────────────────── %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法

C语言中printf格式

2009-05-03 10:55 Turbo C2.0 标准库提供了两个控制台格式化输入、输出函数printf( ) 和scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。 printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标 准输入设备(键盘)上读数据。下面详细介绍这两个函数的用法。 一、printf()函数 printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输 出信息。在编写程序时经常会用到此函数。printf()函数的调用格式为: printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原 样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确定输出内容格式。 参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输 出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意 想不到的错误。 1. 格式化规定符 Turbo C2.0提供的格式化规定符如下: ━━━━━━━━━━━━━━━━━━━━━━━━━━ 符号作用 ────────────────────────── %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %0 无符号以八进制表示的整数 %g 自动选择合适的表示法 ━━━━━━━━━━━━━━━━━━━━━━━━━━ 说明: (1). 可以在"%"和字母之间插进数字表示最大场宽。 例如: %3d 表示输出3位整型数, 不够3位右对齐。 %9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6, 小数点占一位, 不够9位右对齐。 %8s 表示输出8个字符的字符串, 不够8个字符右对齐。 如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出; 若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。 另外, 若想在输出值前加一些0, 就应在场宽项前加个0。 例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽 度为4位。

1.2.1输入、输出语句和赋值语句(教、学案)

1. 2.1输入、输出语句和赋值语句 【教学目标】 1.正确理解输入语句、输出语句、赋值语句的结构。 2.会写一些简单的程序。 3.掌握赋值语句中的“=”的作用 【重点与难点】 教学重点:正确理解输入语句、输出语句、赋值语句的作用。 教学难点:准确写出输入语句、输出语句、赋值语句。 【教学过程】 1.情境导入 在现代社会里, 计算机已经成为人们日常生活和工作不可缺少的工具, 如:听MP3, 看 电影, 玩游戏, 打字排版, 画卡通画, 处理数据等等, 那么, 计算机是怎样工作的呢? 计算机完成任何一项任务都需要算法, 但是, 我们用自然语言或程序框图描述的算法, 计算机是无法“看得懂, 听得见”的。因此还需要将算法用计算机能够理解的程序设计语言(programming language )翻译成计算机程序。 程序设计语言有很多种。为了实现算法中的三种基本的逻辑结构:顺序结构、条件结构、 和循环结构, 各种程序设计语言中都包含下列基本的算法语句: 输入语句 输出语句 赋值语句 条件语句 循环语句 2..探究新知 我们知道, 顺序结构是任何一个算法都离不开的基本结构。 输入、输出语句和赋值语句基本上对应于算法中的顺序结构。(如右图)计算机从上而下按照语句排列的顺序执行这些语句。 输入语句和输出语句分别用来实现算法的输入信息, 输出结果的功能。 用描点法作函数3 2 32430y x x x =+-+的图象时, 需要求 出自变量与函数的一组对应值。编写程序, 分别计算当5,4,3,2,1,0,1,2,3,4,5x =-----时的函数值。 程序: (一)输入语句 在该程序中的第1行中的INPUT 语句就是输入语句。这个语句的一般格式是:

C语言源代码

剪刀石头布源代码 #include #include main() { int d,x; { printf("请输入:1是剪刀,2是石头,3是布"); scanf("%d",&d); x=rand()%3; if(d==x) printf("双方平局"); else if((d==1&&x==2)||(d==2&&x==3)||(d==3&&x==1)) printf("你赢了"); else printf("电脑赢了"); } }

简单计算器 #include main() { int a,b,d=0; char c; while(d==0) { printf("请开始计算,请输入需要运算的数字和运算法则,数字符号数字:"); scanf("%d%c%d",&a,&c,&b); switch(c) { case'+': printf("%d+%d=%d\n",a,b,a+b); break; case'-': printf("%d-%d=%d\n",a,b,a-b); break; case'*': printf("%d*%d=%d\n",a,b,a*b); break; case'/': if(0==b) printf("除法被除数不能为零!\n") ; else printf("%d/%d=%d\n",a,b,a/b); break; } } }

加油站加油问题 #include int main() { double a = 3.25, b = 3.00, c= 2.75; double d = 0.05, e = 0.10, m; int x,y,z; printf("请输入您要的加油量:"); scanf("%d",&x); printf("请输入您要的汽油种类,1-a型汽油售价3.25元/千克,2-b型汽油售价3.00元/千克,3-c型汽油售价2.75元/千克:"); scanf("%d",&y); printf("请输入您要的服务类型,1-自己加服务优惠0.05,2-协助加服务优惠0.10:"); scanf("%d",&z); switch(y) { case 1: y = a;break; case 2: y = b;break; case 3: y = c;break; } if(z == 1) m = (1 - d) * y * x; else if(z == 2) m = (1 - e) * y * x; printf("您需要支付:%f 元,谢谢惠顾,欢迎下次再来",m); return 0; }

C语言的printf输出格式

C语言的printf输出格式控制 printf大家都耳熟能详,但是能真正将其用法弄透的估计很少见。 转一篇,改天整理。 1.转换说明符 %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和doulbe) %e(%E) 浮点数指数输出[e-(E-)记数法] %g(%G) 浮点数不显无意义的零"0" %i 有符号十进制整数(与%d相同) %u 无符号十进制整数 %o 八进制整数 %x(%X) 十六进制整数0f(0F) e.g. 0x1234 %p 指针 %s 字符串 %% 输出字符% 2.标志 左对齐:"-" 比如:"%-20s" 右对齐:"+" 比如:"%+20s" 空格:若符号为正,则显示空格,负则显示"-" 比如:"% 6.2f" #:对c,s,d,u类无影响;对o类,在输出时加前缀o;对x类,在输出时加前缀0x;对e,g,f 类当结果有小数时才给出小数点。 printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少。 ②-:有-表示左对齐输出,如省略表示右对齐输出。 ③0:有0表示指定空位填0,如省略表示指定空位不填。 ④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。未指定n时,隐含的精度为n=6位。 ⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。 格式字符 格式字符用以指定输出项的数据类型和输出格式。

C语言Printf之使用及在单片机中的用法

一、printf常用说明 printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少。 ②-:有-表示左对齐输出,如省略表示右对齐输出。 ③0:有0表示指定空位填0,如省略表示指定空位不填。 ④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。 ⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。 ---------------------------------- 格式字符 格式字符用以指定输出项的数据类型和输出格式。 ①d格式:用来输出十进制整数。有以下几种用法: %d:按整型数据的实际长度输出。 %md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。 %ld:输出长整型数据。 ②o格式:以无符号八进制形式输出整数。对长整型可以用"%lo"格式输出。同样也可以指定字段宽度用“%mo”格式输出。例: main() { int a = -1; printf("%d, %o", a, a); } 运行结果:-1,177777 程序解析:-1在内存单元中(以补码形式存放)为(1111111111111111)2,转换为八进制数为(177777)8。 ③x格式:以无符号十六进制形式输出整数。对长整型可以用"%lx"格式输出。同样也可以指定字段宽度用"%mx"格式输出。 ④u格式:以无符号十进制形式输出整数。对长整型可以用"%lu"格式输出。同样也可以指定字段宽度用“%mu”格式输出。 ⑤c格式:输出一个字符。

输入语句、输出语句和赋值语句

输入语句、输出语句和赋值语句 一、选择题 1.下列给出的输入、输出语句正确的是() ①INPUT a;b;c②INPUT x=3 ③PRINT A=4④PRINT20,3] A.①② B.②③ C.③④D.④ 2.下列所给的运算结果正确的有() ①ABS(-5)=5; ②SQR(4)=±2; ③5/2=2.5; ④5/2=2; ⑤5MOD2=2.5 ⑥3^2=9. A.2个B.3个 C.4个D.5个 3.执行下列算法语句后的结果(xMOD y表示整数x除以整数y 的余数)为() INPUT“x,y=”;x,y A=x*y B=x MOD y C=A*y+B PRINT A,B,C END (运行时从键盘上输入16和5) A.A=80,B=1,C=401 B.A=80,B=3,C=403 C.A=80,B=3.2,C=403.2 D.A=80,B=3.2,C=404

4.将两个数a=25,b=9交换,使a=9,b=25,下面语句正确的一组是() a=b b=a b=a a=b c=b b=a a=c a=c c=b b=a A B C D 5.程序:INPUT A A=A*2 A=A*3 A=A*4 A=A*5 PRINT A END 若输入的是2,则输出的值是() A.16 B.120 C.240 D.360 二、填空题 6.程序Ⅰ程序Ⅱ x=0 x=x+2 x=x+3 PRINT x END INPUT x y=x*x+6*x+10 PRINT y END (1)程序Ⅰ的运行结果为________; (2)若程序Ⅱ与程序Ⅰ运行结果相同,则程序Ⅱ输入的值为________. 7.程序:

printf格式化输出详解

printf()格式化输出详解 2009年03月28日星期六 13:39 本文来自:https://www.wendangku.net/doc/2216051158.html,/language/20080420/7060.html printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少。 ②-:有-表示左对齐输出,如省略表示右对齐输出。 ③0:有0表示指定空位填0,如省略表示指定空位不填。 ④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。对数值型的来说,未指定n时,隐含的精度为n=6位。 ⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。 --------------------------------------- 格式字符 格式字符用以指定输出项的数据类型和输出格式。 ①d格式:用来输出十进制整数。有以下几种用法: %d:按整型数据的实际长度输出。 %md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。 %ld:输出长整型数据。 ②o格式:以无符号八进制形式输出整数。对长整型可以用"%lo"格式输出。同样也可以指定字段宽度用“%mo”格式输出。 例: main() { int a = -1; printf("%d, %o", a, a); } 运行结果:-1,177777 程序解析:-1在内存单元中(以补码形式存放)为(1111111111111111)2,转换为八进制数为(177777)8。 ③x格式:以无符号十六进制形式输出整数。对长整型可以用"%lx"格式输出。同样也可以指定字段宽度用"%mx"格式输出。 ④u格式:以无符号十进制形式输出整数。对长整型可以用"%lu"格式输出。同样也可以指定字段宽度用“%mu”格式输出。 ⑤c格式:输出一个字符。 ⑥s格式:用来输出一个串。有几中用法 %s:例如:printf("%s", "CHINA")输出"CHINA"字符串(不包括双引号)。

输入语句、输出语句和赋值语句

一、知识概述 算法是解决问题的一种方法,我们把问题看成函数,那么可以把算法看成将输入转化为输出的一个过程. 输入语句 在一些算法中,变量的初始值要根据情况经常改变.一般我们把程序和初始数据分开,每次进行运算时,即使初始数据改变,也不必改变程序部分,只要每次运行程序时,输入相应的数据就可以了.这个过程在程序语言中要用“输入语句”来控制,我们以BASIC 语言为例. 输入语句的意义是:在编写程序时可以把程序和初始数据分开,达到用程序解决一类问题的目的.换种说法,就是在程序中用字母(变量)代替数参与运算和执行. 1、输入语句的格式 INPUT“提示内容”;变量 例如:INPUT“x=”;x 注:程序语言中的变量与函数 在设计算法的过程中,解决问题的基本思想常常很简单、很清楚,但表述参与运算的数值的频频变换却很麻烦.为了解决这个问题,需要在程序中引入变量.前面通过对函数概念的学习,我们已经了解了变量的含义:在研究问题的过程中可以取不同数值的量称为变量. 程序中一些重要的函数也很有用处,如取平方根函数,取绝对值函数 . 变量与函数是中学数学里最重要的和最基本的概念,在算法的设计里面仍然发挥着重要的和基本的作用,它们会使算法的表达变得非常简捷、清楚. 2、作用和要求 功能:实现算法的输入变量信息(数值或字符). 要求:(1)输入语句要求输入的值是具体的常量; (2)提示内容提示用户输入的是什么信息,必须加双引号,提示内容“原原本本”的在计算机屏幕上显示,提示内容与变量之间要用分号隔开;

(3)一个输入语句可以给多个变量赋值,中间用“,”分隔;输入语句还可以是“提示内容1”;变量1,“提示内容2”;变量2,“提示内容3”;变量3,……的形式.例如:INPUT“a=,b=,c=,”;a,b,c. 输出语句 任何求解问题的算法,都要把求解的结果“输出”.由此可知,任何程序语言也必须有“输出语句”来控制输出,不同的程序语言都有自己的输出语句和表现形式.但功能都是一样的,也就是以某种形式把求解结果“输出”出来.下面我们还是以BASIC语言为例. 1、输出语句的一般格式 PRINT“提示内容”;表达式 例如:PRINT“S=”;S 2、作用和要求 功能:实现算法的输出信息(表达式). 要求:(1)表达式是指算法和程序要求输出的信息; (2)提示内容提示用户要输出的是什么信息,提示内容必须加双引号,提示内容要用分号和表达式分开; (3)如同输入语句一样,输出语句可以一次完成输出多个表达式的功能,不同的表达式之间可用“,”分隔;输出语句还可以是“提示内容1”;表达式1,“提示内容2”;表达式2,“提示内容3”;表达式3,……的形式;例如:PRINT“a,b,c:”;a,b,c. 思考1:输出语句中的表达式和输入语句中的变量有什么区别与联系? 输入语句提示内容后面跟的是变量,这是一个字母,它的作用是将用户输入的数值代入程序中,而输出语句后面跟的是表达式,如3x+2中含有变量,变量参与了运算后形成了表达式.单纯的变量也是一个表达式,也就是说变量是表达式的一种特殊情况,表达式可以是常量、变量或含有变量的运算式.如“PRINT 3”输出的结果为实数3,“PRINT x”是将变量“x”的值输出. 【拓展·归纳】(1)输出语句又称“打印语句”,将表达式的值在屏幕上显示出来; (2)表达式可以是变量、计算公式或系统信息; (3)输出语句有计算功能,能直接输出计算公式的值.

C语言图形输出习题

【4.4】输入n值,输出如图所示矩形。 【4.5】输入n值,输出如图所示平行四边形。 【4.6】输入n值,输出如图所示高为n的等腰三角形。 【4.7】输入n值,输出如图所示高为n的等腰三角形。 【4.8】输入n值,输出如图所示高和上底均为n的等腰梯形。

【4.9】输入n值,输出如图所示高和上底均为n的等腰空心梯形。 【4.10】输入n值,输出如图所示边长为n的空心正六边型。 【4.11】输入n值,输出如图所示图形。 【4.12】输入n值,输出如图所示图形。 【4.13】输入n值,输出如图所示图形。

【4.14】输入n值,输出如图所示图形。 【4.15】输入n值,输出如图所示图形。 【4.16】输入n值,输出如图所示图形。(例为n=6时) 【4.17】编写程序,输出如图所示sin(x) 函数0到2π的图形。

【4.18】编写程序,在屏幕上输出一个由*号围成的空心圆。 【4.19】编写程序,在屏幕上绘制如图余弦曲线和直线。若屏幕的横向为x轴,纵向为y轴,在屏幕上显示0~360度的cos(x)曲线与直线x=f(y)=45*(y-1)+31的迭加图形。其中cos图形用"*"表示,f(y)用"+"表示,在两个图形的交点处则用f(y)图形的符号。

【4.20】编写程序,输出如图所示高度为n的图形。 【4.21】编写程序,输出如图所示高度为n的图形。 【4.22】输入n值,输出如图所示图形。

【4.23】输入n值,输出如图所示的n×n(n<10)阶螺旋方阵。 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 图4.19 n=5时的螺旋方阵 【4.24】输入n值,输出如图所示回型方阵。 【4.25】输出如图所示的数字金字塔

C语言printf函数详解

功能: 产生格式化输出的函数。 用法: printf(格式控制字符串,参数1,参数2,…,参数n); 格式控制字符串定义为: %[flags][width][.perc][F|N|h|l]type type d有符号10进制整数 i有符号10进制整数 o无符号8进制整数 u无符号10进制整数 x无符号的16进制数字,并以小写abcdef表示 X无符号的16进制数字,并以大写ABCDEF表示 f浮点数 E/e用科学记数法表示浮点数 g用%f和%e表示中,总的位数最短的来表示浮点数。G同g格式,但表示为指数c单个字符 s字符串 S wchar_t字符(宽字符)类型字符串 %显示百分号本身 p显示一个指针,near指针表示为:XXXX,far指针表示为:XXXX:YYYY n相连参量应是一个指针,其中存放已写字符的个数 flags:规定输出格式 无右对齐,左边填充0和空格 -左对齐,右边填充空格 +在数字前增加符号+或- 0 将输出的前面补上0,直到占满指定列宽为止(不可以搭配使用-) 空格输出值为正时冠以空格,为负时冠以负号 #当type=c,s,d,i,u时没有影响;当type=o,x,X时,分别在数值前增加'0',"0x","0X"; 当type=e,E,f时,总是使用小数点;当type=g,G时,除了数值为0外总是显示小数点。 width:用于控制显示数值的宽度 n(n=1,2,3...)宽度至少为n位,不够以空格填充 0n(n=1,2,3...)宽度至少为n位,不够左边以0填充 *格式列表中,下一个参数还是width prec:用于控制小数点后面的位数 无按缺省精度显示 0当type=d,i,o,u,x时,没有影响;当type=e,E,f时,不显示小数点 n(n=1,2,3...)当type=e,E,f时,表示的最大小数位数

C语言典型例题——关于图形输出

在C语言学习中我们会遇到各种输出图形的题目,下面我们就来看一些这种题目。 一、编写程序输出下图所示的图形。 (1)(2)(3)(11) 下面我们分别以i、j、k分别表示行数,空格数,星号数。 (1)i j k (2) i j k (3) i j k 1 0 1 1 6 1 1 0 9 2 0 2 2 5 2 2 1 7 3 0 3 3 4 3 3 2 5 4 0 4 4 3 4 4 3 3 5 0 5 5 2 5 5 4 1 6 0 6 6 1 6 j<=i-1 7 0 7 7 0 7 k<=11-2*i K<=i j<=7-i K<=i 发现行数、空格、星号有如上关系,用for循环便可实现。

(1) #include"stdio.h" void main() {int i,j; for(i=1;i<=7;i++) {for(j=1;j<=i;j++) printf("*"); printf("\n"); } } (2) #include"stdio.h" void main() {int i,j,k; for(i=1;i<=7;i++) {for(j=1;j<=7-i;j++) printf(" "); for(k=1;k<=i;k++) printf("*"); printf("\n"); } } (3) #include"stdio.h" void main()

{int i,j,k; for(i=1;i<=6;i++) {for(j=1;j<=i-1;j++) printf(" "); for(k=1;k<=11-2*i;k++) printf("*"); printf("\n"); } } 然后我们在进行扩展。编写程序输出如下图型。 (4)(5)(6)所编程序如下: (4) #include"stdio.h" void main() {int i,j,k; for(i=1;i<=7;i++) {for(j=1;j<=8-i;j++) printf("*"); printf("\n");

C语言Printf和Scan函数的使用方法

C语言Printf和Scan函数的使用方法 一printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。printf()函数的调用格式为: printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确定输出内容格式。 参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想 不到的错误。 格式化字符串的格式是: %[标志][输出最小宽度][.精度][长度]格式字符 1. 标志:标志字符为-、+、#、空格四种,其意义下表所示: 标志意义 - 结果左对齐,右边填空格 + 输出符号(正号或负号) 空格输出值为正时冠以空格,为负时冠以负号 # 对c,s,d,u类无影响;对o类,在输出时加前缀o;对x类,在输出时加前缀0x;对e,g,f 类当结果有小数时才给出小数点(??????) 例1: #include main() { int a=100; float b=123.255; printf("a=%d ",a); printf("a=%10d ",a); printf("a=%-10d ",a); printf("a=%+d ",a); printf("a=% d ",a); printf("a=%#o ",a); printf("a=%#x ",a); printf("b=%#f ",b); } 运行结果 a=100

C语言图形输出习题解析

【】输入n值,输出如图所示矩形。 【】输入n值,输出如图所示平行四边形。 【】输入n值,输出如图所示高为n的等腰三角形。 【】输入n值,输出如图所示高为n的等腰三角形。 ? 【】输入n值,输出如图所示高和上底均为n的等腰梯形。

【】输入n值,输出如图所示高和上底均为n的等腰空心梯形。 【】输入n值,输出如图所示边长为n的空心正六边型。 【】输入n值,输出如图所示图形。 《 【】输入n值,输出如图所示图形。

【】输入n值,输出如图所示图形。 【】输入n值,输出如图所示图形。 【】输入n值,输出如图所示图形。 # 【】输入n值,输出如图所示图形。(例为n=6时) 【】编写程序,输出如图所示sin(x) 函数0到2π的图形。

【】编写程序,在屏幕上输出一个由*号围成的空心圆。 【】编写程序,在屏幕上绘制如图余弦曲线和直线。若屏幕的横向为x轴,纵向为y轴,在屏幕上显示0~360度的cos(x)曲线与直线x=f(y)=45*(y-1)+31的迭加图形。其中cos图形用"*"表示,f(y)用"+"表示,在两个图形的交点处则用f(y)图形的符号。

, 【】编写程序,输出如图所示高度为n的图形。 【】编写程序,输出如图所示高度为n的图形。 【】输入n值,输出如图所示图形。

{ 【】输入n值,输出如图所示的n×n(n<10)阶螺旋方阵。 1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9 图 n=5时的螺旋方阵 【】输入n值,输出如图所示回型方阵。 【】输出如图所示的数字金字塔

赋值,输入和输出语句

课题:赋值,输入和输出语句 (一)教学目标 1.知识与技能目标 (1)初步了解基本的算法语句中的赋值,输入和输出语句特点. (2)理解基本算法语句是将算法的各种控制结构转变成计算机能够理解的程序语言. (3)结合Scilab的程序语言,初步掌握赋值,输入和输出语句的结构以及如何编写对应的Scilab程序及在计算机上实现算法. 2.过程与方法目标 (1)通过上机编写程序,在了解三种语句的应用规则的基础上,运用算法语句实现运算. (2)通过模仿,操作,探索的过程,体会算法的基本思想和基本语句的用途,提高学生应用 数学软件的能力. 3.情感,态度和价值观目标 (1)通过对三种语句的了解和实现,发展有条理的思考,表达的能力,提高逻辑思维能力. (2)学习算法语句,帮助学生利用计算机软件实现算法,活跃思维,提高学生的数学素养. (3)结合计算机软件的应用, 增强应用数学的意识,在计算机上实现算法让学生体会成 功的喜悦. (二)教学重点和难点 1.教学重点:赋值,输入和输出语句的基本结构特点及用法. 2.教学难点:三种语句的意义及作用. (三)教学方法 引导与合作交流相结合,学生在体会三种语句结构格式的过程中,让学生积极参与,讨论交流,充分挖掘三种算法语句的格式特点及意义,在分析具体问题的过程中总结三种算法语句的思想与特征.运用计算机教学, (四)教学过程 教学环节1:提出问题 教学内容: 教师提出前面的例子:鸡兔同笼问题的一个算法: S1: 输入鸡和兔的总数量M S2: 输入鸡兔腿的总数N S3: 鸡的数量 4 2 M N A -= S4: 兔的数量B=M-A 如何才能把这些文字语言写成计算机识别的程序语言并能够运行呢? 对于题目中的输入,输出及鸡和兔的数量的表示A,B的表示使同学们对程序语言的表述产生了兴趣,抓住时机进入下一个环节,介绍定义. 在上一节,我们学习算法和程序框图时,就指出了用顺序结构,条件分支结构和循环结构就可以表示任何算法.如何将算法的这些控制结构,转变成计算机能够理解的程序语言和能在计算机上实现的程序呢?现在计算机能够直接或间接理解的程序语言有很多种,这些程序语言都包含了一些基本的语句结构:输入语句,输出语句,赋值语句,条件语句和循环语句.本节课我们就结合Scilab的程序语言,学习赋值语句,输入和输出语句进行分析,帮助大家更好地理解这些语句地结构以及在解决数学问题中的应用.

printf输出字体颜色

C语言编程中在控制平台输出带颜色字体的方案 方案一 有时候为了实现在终端输出的时候字体能够带颜色,并且可以产生简单的闪烁的功能,特写了下列的代码 实现hello world的带颜色的输出,并且每过一秒产生一个闪烁的功能. (注:具体还得判断终端类型) CODE: #include #include #include #include int flag = 0; void sig_int(int signum) { if (flag == 1) fprintf(stderr, "\033[47;31mhello world\033[5m"); fprintf(stderr,"\033[;\033[0m"); fprintf(stderr,"\033[;\033[0m"); printf("\n"); exit(0); } int main() { int i = 0; struct sigaction sig_act; sig_act.sa_handler = sig_int; sigemptyset(&sig_act.sa_mask); sig_act.sa_flags = 0; if (sigaction(SIGINT, &sig_act, NULL) < 0) { fprintf(stderr, "signal error\n"); exit(1); } while (i++ < 10) { fprintf(stderr, "\033[;\033[s"); fprintf(stderr, "\033[47;31mhello world\033[5m"); flag = 0; sleep(1); fprintf(stderr, "\033[;\033[u"); fprintf(stderr, "\033[;\033[K"); flag = 1;

C语言中Printf和Scanf 的使用方法详细

C语言中Printf和Scanf 的使用方法详细 Printf和Scan函数的使用方法 一printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出 信息。在编写程序时经常会用到此函数。printf()函数的调用格式为: printf("<格式化字符串>", <参量表>); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原 样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确定输出内容格式。 参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出 参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意 想 不到的错误。 格式化字符串的格式是: %[标志][输出最小宽度][.精度][长度]格式字符 1. 标志:标志字符为-、+、#、空格四种,其意义下表所示: 标志意义 - 结果左对齐,右边填空格 + 输出符号(正号或负号) 空格输出值为正时冠以空格,为负时冠以负号 # 对c,s,d,u类无影响;对o类,在输出时加前缀o;对x类,在输出时加前缀0x;对e,g,f 类当结果有小 数时才给出小数点(??????)例1: #i nclude main() { int a=100; float b=123.255; printf("a=%d ",a); printf("a=d ",a); printf("a=%-10d ",a); printf("a=%+d ",a); printf("a=% d ",a);

printf("a=%#o ",a); printf("a=%#x ",a); printf("b=%#f ",b); } 运行结果 a=100 a= 100 a=100 a=+100 a= 100 a=0144 a=0x64 b=123.254997 (?????) 2.输出最小宽度:用十进制整数来表示输出的最少位数。(至少要输出这么多位!) 若实际位数多于定义的宽度:则按实际位数输出。 若实际位数少于定义的宽度:则右对齐,左边留空。 有负号,左对齐,右边留空 表示宽度的数字以0开始,则右对齐,左边留空。 例2 #i nclude main() { int a=3456; printf("a== ",a); //若实际位数多于定义的宽度:则按实际位数输出 printf("a=d ",a); //若实际位数少于定义的宽度:则右对齐,左边留空 printf("a=%-10d ",a); //若实际位数少于定义的宽度:有负号,左对齐,右边留空 printf("a=0d ",a); //若实际位数少于定义的宽度:表示宽度的数字以0开始,则右对齐,左边留空 printf("a=%-010d ",a); //左对齐,0无意义。 } 运行结果: a=3456 a= 3456 a=3456

输入语句、输出语句和赋值语句 (20)

第一章 1.2 1.2.1 【基础练习】 1.下列给出的输入输出语句正确的是() ①输入语句INPUT a,b,c,d,e ②输入语句INPUT X=1 ③输出语句PRINT A=4 ④输出语句PRINT10,3*2,2/3 A.①②B.②③ C.①④D.③④ 【★答案★】C 【解析】①INPUT语句可以给多个变量赋值,变量之间用“,”隔开;②INPUT语句中只能是变量,而不能是表达式;③PRINT语句中不用赋值号“=”;④PRINT语句可以输出常量、表达式的值.故①④正确. 2.下列算法:①z=x;②x=y;③y=z;④输出x,y.关于算法的作用,叙述正确的是() A.交换了原来的x,y B.让x与y相等 C.变量z与x,y相等 D.x,y仍是原来的值 【★答案★】A 【解析】本算法利用了中间变量z,使x,y的值进行了互换. 3.运行下面的程序,若输入x=1,则输出结果y=() INPUT x x=x*2 x=x*3 y=x*x+6 PRINT y END A.36B.42 C.48D.54 【★答案★】B 【解析】由程序知x=1×2=2,x=2×3=6,y=62+6=42. 4.下面的程序输出的结果为() A.27B.9

C. 2+25D.11 x=6 y=3 x=x/3 y=4*x+1 PRINT x+y END m=1 n=2 p=3 p=m n=p m=n PRINT m,n,p END (第4题图)(第5题图) 【★答案★】D 【解析】该程序的运行过程是:x=6,y=3;x=6÷3=2,y=4×2+1=9.x+y=2+9=11,所以输出11. 5.下列程序的运行结果为________. 【★答案★】1,1,1 【解析】此程序主要以赋值语句来设计,其作用是首先对变量m,n,p分别赋值1,2,3,然后将变量m的值赋给p,再将变量p的值赋给n,最后将变量n的值赋给m,所以最后变量m,n,p的值都等于1,运行结果输出1,1,1. 6.把下列程序用程序框图表示出来. A=20 B=15 A=A+B A=A*B PRINT A+B END 【★答案★】解:程序框图如所示. 7.读下列两个程序回答问题.

C语言基础代码

C 基础 1、输入成绩,判断是否及格 #include void main() { float a,b,max; printf("please enter a:"); scanf("%f ",&a); if (a>=60) printf("及格\n"); else printf("不及格\n"); } 2、输入两个学生a和b的成绩,输出其中高的成绩 #include void main() { float a,b,max; printf("please enter a and b:"); scanf("%f,%f",&a,&b); // 数据输入时若无逗号一般用空格区分两输入值,本 例一定要在两数之间加逗号 if (a>=b) max=a; if (b>a) max=b; printf("max=%f\n",max); } 3、要求按照百分制考试分数输出等级。 #include "stdio.h" main() { int grade; printf("input grade="); scanf("%d",&grade); switch ((int)(grade/10)) { case 10: case 9: printf("A\n");break; case 8: printf("B\n");break; case 7: printf("C\n");break; case 6: printf("D\n");break; default: printf("E\n"); } }

4、求1+2+……+100的和,分别用while、do…while和for语句实现(1)while #include void main ( ) { int sum=0,i=1; while (i<=100) { sum=sum+i; i++; } printf("sum=%d\n",sum); } (2)do…while #include void main( ) { int sum=0,i=1; do {sum=sum+i; i++; }while (i<=100); printf("sum=%d\n",sum); } (3)for #include void main( ) { int sum=0,i; for (i=1;i<=100;i++) sum=sum+i; printf("sum=%d\n",sum); }

相关文档