printf-执行下列程序是输入,123<空格>456<空格>789<回车>,输出的结果是?

问题描述

执行下列程序是输入,123<空格>456<空格>789<回车>,输出的结果是?

执行下列程序是输入,123<空格>456<空格>789<回车>,输出的结果是?
main()
{char s[100];
int c,i;
scanf("%c",&c);
scanf("%d",&i);
scanf("%s",s);
printf("%c,%d,%sn",c,i,s);
}解释一下,谢谢你们

解决方案


首先从输入流 读入一个字符 付给 int型的 c 。这样是可以的 因为char型本质是短int型、因此你把 int c当 char c 使用 除了浪费内存也没多大问题
然后读入一个int i 从输入流读入 23 遇到空格 结束 将23 赋给 i
最后读入一个字符串 从输入流开始读入 直到遇到 空格 将456赋给 s
输出

解决方案二:

输出的结果为
1,23,456
因为char类型本身为一字节,存储的类型也是单个字符,在C语言中,当输入超出数据类型时,自动认为输入完成。所以当输入123时,其实在1之后就已经完成了对char类型数据的输入,后边的23是对int类型的输入,因为输完23和输完456之后有空格,标志着输入结束,所以最终结果为
1,23,456

时间: 2025-01-30 04:43:53

printf-执行下列程序是输入,123&amp;lt;空格&amp;gt;456&amp;lt;空格&amp;gt;789&amp;lt;回车&amp;gt;,输出的结果是?的相关文章

这个c程序如果输入20的话,是不是只执行最后一个else后面的语句???

问题描述 这个c程序如果输入20的话,是不是只执行最后一个else后面的语句??? // Exercise 3.3 Calculate a discounted price // I interpreted this exercise as implying that the 10% applies to items 31 to 50 // and the 15% applies to items in excess of 50. // That is, you don't get 15% di

linux下普通用户在输入root密码下才可以执行对应程序如何实现?

问题描述 linux下普通用户在输入root密码下才可以执行对应程序如何实现? 解决方案 应该是类似于起一个shell,然后要求你切换到root,然后再执行程序,程序退出之后,shell也退出 解决方案二: http://www.lupaworld.com/article-223530-1.html 解决方案三: 获取用户的权限,看看 对于当前用户的程序权限是否足够,不够的话就弹出对话框,要求输入密码

c++-编写程序,输入字符串S1和S2 以及插入位置n,在字符串S1中的指定位置n处插入字符串S2。

问题描述 编写程序,输入字符串S1和S2 以及插入位置n,在字符串S1中的指定位置n处插入字符串S2. 编写程序,输入字符串S1和S2 以及插入位置n,在字符串S1中的指定位置n处插入字符串S2.例如,输入"jiangsu"."123"和位置3,则输出"ji123angsu". 解决方案 #include <iostream> #include <string> using namespace std; int main(

Windows编程:终止可执行(exe)程序 代码(C++)

终止可执行(exe)程序, 首先遍历进程, 找到进程名称对于的进程ID号, 然后根据进程ID, 终止进程. 示例代码: 包括遍历进程代码, 和关闭代码. 代码: /* * main.cpp * * Created on: 2014.06.08 * Author: Spike */ /*vs 2012*/ #include <iostream> #include <string> #include <map> #include <windows.h> #inc

Windows编程:启动可执行(exe)程序 代码(C++)

通过输入程序位置启动可执行(exe)程序, 使用windows的CreateProcess()函数, 即可. 示例是调用预先生产的可执行(exe)程序. 代码: /* * main.cpp * * Created on: 2014.06.08 * Author: Spike */ /*vs 2012*/ #include <iostream> #include <windows.h> using namespace std; bool startProcess (const std

编码-霍夫曼树程序,输入字符串统计字符出现次数并译码。请问如何改成从文件读入字符串?

问题描述 霍夫曼树程序,输入字符串统计字符出现次数并译码.请问如何改成从文件读入字符串? //生成HuffmanCode文件的两个函数void HuffmanEncoding(HuffmanTree HTHuffmanCode HC){//根据HuffmanTreeHT求HuffmanCode表HC int cpi; char cd[n]; int start; cd[num] = ''; for(i = 1;i <= num;i++){ start = num; c = i; while((p

正在自学go语言,命令行执行以下程序,进入等待输入状态,请问如何处理?

问题描述 正在自学go语言,命令行执行以下程序,进入等待输入状态,请问如何处理? package main import (bufio""fmt""os"") func main() { counts := make(map[string]int) input := bufio.NewScanner(os.Stdin) for input.Scan() { counts[input.Text()]++ } // NOTE: ignoring po

c++-编写程序,输入任意一个含有空格的字符串(至少10个字符),删除指定字符后输出该字符串。

问题描述 编写程序,输入任意一个含有空格的字符串(至少10个字符),删除指定字符后输出该字符串. 编写程序,输入任意一个含有空格的字符串(至少10个字符),删除指定字符后输出该字符串.例如,输入"jiangsu123"和删除位置5,则输出"jiansu123". 解决方案 #include <iostream> #include <string> using namespace std; int main() { char s1[100];

linux下执行java程序的sh脚本分享_java

今天大概耗费了快一天的时间研究怎么用脚本执行java程序,终于实现了,分享一下 (1)在linux下写一个.sh文件 (2)文件内容如下: 复制代码 代码如下: #!/bin/sh         //bash文件头 APP_HOME=/home/blmcrm/crm/A      //要执行的java文件中bin文件的上一个目录,我的目录是/home/blmcrm/crm/A/bin/blm......(后面不写了),总之就是写bin目录前面的部分,因为jar包在bin目录里面,如果不在bin