在C语言中如何实现用键盘输入一个字符串,并打印出来? C语言中如何实现输入一个字符串再输出该字符串?

\u5728C\u8bed\u8a00\u7f16\u8bd1\u5668\u4e2d\u5982\u4f55\u5b9e\u73b0\uff1a\u8f93\u5165\u4e00\u4e2a\u5b57\u7b26\u4e32\uff0c\u6253\u5370\u51fa\u8be5\u5b57\u7b26\u4e32\u4e2d\u5b57\u7b26\u7684\u6240\u6709\u6392\u5217\u3002

#include void Permutation(char*a,char*current);int main(){char s[30]="abc";Permutation(s,s);return 0;}void Permutation(char*a,char*current){if(*current=='\0')printf("%s\n",a);for(char*next=current;*next!='\0';next++){char tem=*current;*current=*next;*next=tem;Permutation(a,current+1);tem=*current;*current=*next;*next=tem;}}

#include
#include

void main()
{
char *p;


gets(p);
puts(p);

}

\u53ef\u5e94\u8be5\u5982\u4f55\u624d\u80fd\u5b9e\u73b0\u8f93\u5165\u4e24\u4e2a\uff0c\u8f93\u51fa\u4e24\u4e2a\u5462\uff1f
#include
#include

void main()
{
char *p,*q;


gets(p);
puts(p);

printf("\n");
gets(p);
q=p;
puts(q);

}

在C语言中输入字符串后然后打印出来的编程方法如下:

1.首先需要先定义一个存放字符串的数组空间,如给字符串100个数组空间。

2.接着使用gets()函数来获取键盘输入的字符串。一般格式为gets(定义的字符数组名)。

3.然后再使用puts()函数来输出之前输入的字符串内容。一般格式puts(定义的字符数组名)。

4.最终运行程序,即可成功实现输入字符串,然后原样在屏幕中输出字符串。

扩展资料:

1.gets从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。

2.puts()函数用来向标准输出设备(屏幕)输出字符串并换行,具体为:把字符串输出到标准输出设备,将'\0'转换为回车换行。其调用方式为,puts(s);其中s为字符串字符(字符串数组名或字符串指针)。

参考资料:

百度百科-gets

百度百科-puts



在C语言中实现用键盘输入一个字符串,并打印出来,代码如下:

#include <stdio.h>

void main()

{

char array[100];

printf("please input the string: 
");

scanf("%s", array);

printf("%s
",array);

}

扩展资料:

键盘输入一个字符串打印出来,用java语言实现:

public static void main(String[] args) {

System.out.println("请输入字符串:");

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

try {

String str = br.readLine();

System.out.println(str);

}

catch (IOException e) {

e.printStackTrace();

}

}



在C语言中实现用键盘输入一个字符串,并打印出来的解决方法如下:

1、首先定义一个字符串数组,如你可以给字符串100个数组空间。如图括号内数字即为你定义的数组大小。

2、gets()函数用来获取键盘输入的字符串,括号内的s即为字符串变量。

3、接着用puts()函数输出之前我们从键盘读取的字符串。括号内为字符串数组的名字,要与前面的保持一致。

4、然后点击运行,得到以下结果即为正确。

扩展资料:

字符数组的输出:

(1)用putchar()或printf()的‘%c’格式符对数组进行字符赋值。例如,对于数组a[10]:用putchar()赋值:

for(i=0;i<10;i++)

a[i]=putchar();

用printf()赋值:

for(i=0;i<10;i++)

printf("%c",a[i]);

输出结果为:

c program [2] 

(2)用printf()的'%s'格式对数组赋值。还是对于数组a[10];

printf("%s",a);

输出结果为:

c program

参考资料来源:

百度百科-char

百度百科-字符数组



乱码的产生是因为你未初始化sf[100]

修改为:

#include 

#include            //strlen的调用

main()

{

int n,i;

char a[20]={0};         //初始化数组

printf("please input a string:");

gets(a);                   //从键盘读入字符串

n=strlen(a);            //计算输入的数组长度

printf("%d
",n);

for(i=n-1;i>=0;i--)

putchar(a[i]);          //倒序输出字符串

putchar('
');

}

拓展资料

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。



首先,你代码中有一个逻辑错误,即char sf;这是定义单字符,而想要定义字符串可使用字符数组,即将char sf;改为  char sf[101] 即可。(数组大小可根据字符串大小需求进行更改)

正确代码:

#include<stdio.h>

void main()

{

char sf[101];

scanf("%s",&sf);

printf("%s",sf);

getch();//这行可删可不删 

}

扩展内容:

字符数组:

字符数组是指用来存放字符数据的数组。其定义的一般形式为: char 数组名[数据长度] 。字符数组用于存放字符或字符串,字符数组中的一个元素存放一个字符,它在内存中占用一个字节。C语言中没有字符串类型,字符串是存放在字符型数组中的

用来存放字符数据的数组称为字符数组。字符数组中的一个元素存放一个字符。定义字符数组的方法与定义数值型数组的方法类似。

字符数组定义:

其定义的一般形式是:char 数组名[数据长度]

例如:

char c[10];

c[0]='I'; c[1]=' '; c[2]='l'; c[3]='o'; c[4]='v'; c[5]='e'; c[6]=' '; c[7]='y'; c[8]='o'; c[9]='u';

以上定义了c为字符数组,包含10个元素。

由于字符型数据是以整数形式(ASCII代码)存放的,因此也可以用整型数组来存放字符数据,例如:

int c[10];

但这时每个数组元素占2个字节的内存单元,浪费存储空间。 [1] 

字符数组也可以是二维或多维数组,例如:

char c[5][10];

即为二维字符数组。

资料参考:字符数组 - 百科



  • C璇█缂栫▼:浠閿洏涓緭鍏ヤ竴涓嫳鏂囧瓧绗︿覆
    绛旓細include<stdio.h> include<stdlib.h> int main(){ int strSize = 100;char *str = (char *)malloc(sizeof(char) * strSize);int charNum = 0;char input;//閫愪釜瀛楃杈撳叆瀛楃涓诧紝鍙互杈撳叆int鍙互琛ㄧず鐨勬渶澶у间釜瀛楃 printf("璇疯緭鍏ヤ换鎰忎釜瀛楃:\n");while(true){ scanf("%c",&input);...
  • 璇锋暀,C璇█瀹炵幇銆備粠閿洏涓杈撳叆涓涓瓧绗︿覆,缂栧啓涓涓▼搴忓畬鎴愭寚瀹氬瓧姣鐨...
    绛旓細include <stdio.h> int main(){ char c,cn;char s[100];char* p=s;printf("杈撳叆鏂囨湰锛歕n");gets(s); //杈撳叆this is a c program printf("杈撳叆闇瑕佹浛鎹㈠瓧绗﹀拰鏇挎崲鎴愬瓧绗︼紝鏍煎紡: 鑰佸瓧绗 绌烘牸 鏂板瓧绗︼細\n");scanf("%c %c",&c,&cn); // 杈撳叆i a for(; *p; p++)if(*p==c...
  • 鐢–璇█缂栧啓绋嬪簭浠閿洏杈撳叆涓涓鏁存暟鏁皀,杈撳嚭n!
    绛旓細include <stdio.h>int Func(int n){if(n < 2)return 1;else return n*Func(n-1);} void main(){int n =0,m=0;printf("璇杈撳叆涓涓鏁存暟锛")scanf("%d",&n);m=Func(n);printf("%d!=%d\n",n,m);} 鍦ㄤ互涓婄▼搴忎唬鐮佷腑锛孎unc锛堬級涓洪掑綊鍑芥暟锛屼富鍑芥暟main锛堬級涓帴鏀閿洏杈撳叆鏁存暟...
  • C璇█缂栧啓绋嬪簭瀹炵幇:浠閿洏杈撳叆涓涓勾鏈堟棩,瑕佹眰鍑鸿澶╂槸璇ュ勾鐨绗嚑澶...
    绛旓細include<stdio.h> int main(void){ int month,year,day,sum,i=0;printf("杈撳叆骞存湀鏃:\n");scanf("%d %d %d",&year,&month,&day);switch(month){ case 12: i=i+30;case 11: i=i+31;case 10: i=i+30;case 9: i=i+31;case 8: i=i+31;case 7: i=i+30;case 6: i=i...
  • C璇█,浠閿洏杈撳叆涓涓ぇ鍐欏瓧姣,瑕佹眰鏀鐢灏忓啓瀛楁瘝杈撳嚭
    绛旓細鐒跺悗鐢╞鍔犱笂32鍗冲彲寰楀埌灏忓啓瀛楁瘝锛屽師鍥犲氨鏄敱浜庡ぇ鍐欏瓧姣嶄笌灏忓啓瀛楁瘝涔嬮棿鐨勫樊鍊间负 32锛屽洜姝ゅ皢灏忓啓瀛楁瘝鐨 ASCII 鐮佸 鍔犱笂32锛屼究鍙緱鍒颁笌涔嬪搴旂殑澶у啓瀛楁瘝銆傛渶鍚庢墦鍗扮粨鏋滃嵆鍙細3銆佽繍琛岀紪璇戠▼搴忥紝杩欓噷杈撳叆浠绘剰涓涓瓧姣嶆寜涓嬪洖杞︼紝鍗冲彲鎵撳嵃鍑哄鐞嗗悗鐨勫皬鍐欏瓧姣嶃備互涓婂氨鏄鐢–璇█澶勭悊澶у啓杞皬鍐欑殑绀轰緥锛...
  • 鐢–璇█鎬庝箞缂栦粠閿洏杈撳叆涓涓瓧绗,杈撳嚭璇ュ瓧绗﹀強鍏禔SCII
    绛旓細include<stdio.h> void main(){ char c;int a;scanf("%c",&c);a=int(c);printf("%d",a);}
  • 鐢–璇█ 缂栫▼瀹炵幇浠閿洏褰曞叆涓涓瓧绗︿覆鈥漚bcdefgh鈥,
    绛旓細include <stdio.h> void erase(char str[]){ int index=0,i=0;while(*(str+index)!='\0'){ if(index%2==0){ if(*(str+index+1)!='\0'){ (str+i)=*(str+index+1);i++;} else { (str+i)=*(str+index+1);} } else { if(*(str+index+1)=='\0'){ (str+i)=...
  • 鎬庝箞鐢╟璇█鍐欎竴涓 绋嬪簭銆瀹炵幇浠閿洏杈撳叆瀛楃骞跺啓鍏ヤ竴涓枃浠躲
    绛旓細鏂囦欢鎿嶄綔鍑芥暟涓鑸互f+鍗曡瘝鐨勫舰寮忔潵鍛藉悕(f鏄痜ile鐨勭畝鍐)锛屽叾澹版槑浣嶄簬stdio.h澶存枃浠跺綋涓備緥濡傦細fopen銆乫close鍑芥暟鐢ㄤ簬鏂囦欢鎵撳紑涓庡叧闂紱fscanf銆乫gets鍑芥暟鐢ㄤ簬鏂囦欢璇诲彇锛沠printf銆乫puts鍑芥暟鐢ㄤ簬鏂囦欢鍐欏叆锛沠tell銆乫seek鍑芥暟鐢ㄤ簬鏂囦欢鎿嶄綔浣嶇疆鐨勮幏鍙栦笌璁剧疆銆備竴鑸鐨凜璇█鏁欑▼閮芥湁鏂囦欢鎿嶄綔涓绔狅紝鍙互鎵炬湰鏁欐潗杩涗竴姝ュ涔犮
  • 鐢–璇█琛ㄧず浠閿洏杈撳叆涓涓崄杩涘埗鏁存暟,濡傛灉澶т簬60,鍒欏湪灞忓箷涓婅緭鍑衡滄垚鍔...
    绛旓細include "stdio.h"main(){ int n;printf("杈撳叆涓涓崄杩涘埗鏁存暟:\n");scanf("%d",&n);if(n>60)printf("鎴愬姛!");else printf("澶辫触!");}
  • 鐢╟璇█缂栧啓浠閿洏杈撳叆涓涓暟,鍒ゆ柇鏄惁鍦ㄦ暟缁刟閲(1~10鐨鏁存暟)
    绛旓細include <stdio.h> void main(void){ int a[10];int data=0;int i=0;for(i=0;i<10;i++)a[i]=i+1;scanf("%d",&data);for(i=0;i<10;i++){ if(data==a[i])printf("%d鍦ㄦ暟缁勯噷\n",data);} if(i==10)printf("%d涓嶅湪鏁扮粍閲孿n",data);} ...
  • 扩展阅读:\t在c语言中怎么用 ... c语言怎么继续输入 ... 序列号里有θ怎么输入 ... c语言怎么从键盘输入 ... θ怎么用键盘打出来 ... 手机输入法怎么设置 ... c语言怎么让输出换行 ... c语言怎么分两行输入 ... 编程里θ怎么在电脑输入 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网