c语言字符串输出

来源:百度知道 编辑:UC知道 时间:2024/05/12 04:44:08
#include "Stdio.h"
#include "Conio.h"

void main()
{int a;
char f[5];
scanf("%d",&a);
if (a>100) f='Right';
else f="Wrong";
printf("%s",f) ;
getch();
return 0;
}

if (a>100) f='Right';
else f="Wrong";这两行要求座值等于右值。(或提示:需要逻辑0与非0在函数中)

要用printf("%s",f)或printf("%5c",f)输出该怎么改?
输出一个句子是用 %s,还是其他的?
if (a>100) f="Right";
else f="Wrong";

都是双引号。第一个问题最把代码写下,偶小白一个,不写下还是不明白.

c中只有给字符串初始化的时候才能直接赋值,否则就要用strcpy()函数.
strcpy(a,b)//将字符串b赋给字符串a

注意用于存储5个或5个以下字符的字符串长度必须是6,因为字符串定义为以空字符'\0'结尾.
#include "Stdio.h"
#include "Conio.h"
#include<string.h>//字符串操作头文件.包含strcpy()

void main()
{
int a;
char f[6];
scanf("%d",&a);
if(a>100)
strcpy(f,"Right");
else
strcpy(f,"Wrong");
printf("%s",f);
getch();
}

if (a>100) f='Right';
else f="Wrong";
这样不能赋值的,要用strcpy()函数
strcpy 原型:extern char *strcpy(char *dest,char *src); 用法:#include <string.h> 功能:把src所指由NULL结束的字符串复制到dest所指的数组中。 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。...
你写成 strcpy( f, "Right" );就可以了

第二个问题,就是用%s输出字符串