// talkback.c -- 演示与用户交互
#include <stdio.h>
#include <string.h> // 提供strlen()函数的原型
#define DENSITY 62.4 // 人体密度(单位:磅/立方英尺)
int main()
{
float weight, volume;
int size, letters;
char name[40] = {0}; /* 声明字符串name, name是一个可容纳40个字符的数组 */
printf("Hi! What's your first name?\n");
scanf_s("%s", name);
printf("%s, what's your weight in pounds?\n", name);
scanf_s("%f", &weight);
size = sizeof name;
letters = strlen(name); /* strlen()函数的使用 */
volume = weight / DENSITY;
printf("Well, %s, your volume is %2.2f cubic feet.\n", name, volume);
printf("Also, your first name has %d letters,\n", letters);
printf("and we have %d bytes to store it.\n", size);
return 0;
}
以上是源代码,大家可以试着运行,我调试并没有报错,并也出现了弹窗,但运行的结果视乎纯在问题,判断不正常情况理由。程序目的是实现与用户的交互,代码中使用两次scanf_s()输入函数,所以用户应当输入两次,实现两次交互效果,请看下面调试输出图:
标签:C6064,letters,name,weight,scanf,说明符,printf,your From: https://blog.51cto.com/u_16147979/7326131