[英]Name in string c++
這次我的任務是編寫程序,該程序將在您輸入姓氏和名字的地方創建字符串,然后程序以以下形式打印該字符串:人員的姓氏是_ 第一個名字是 。 這是我的代碼:
#include <stdio.h>
#include <string.h>
void imeosobe(char *s,char *prezime,char *ime)
{
int i,a=0,k=0;
for(i=0;i<strlen(s);i++)
{
if(a==0) *(prezime+i)=*(s+i);
else
{
*(ime+k)=*(s+i);
k++;
}
if(s[i]=="" ) a=i;
}
*(prezime+i-k)='\0';
*(ime+k)='\0';
}
main()
{
char s1[50],prezime[50],ime[50];
printf("Unesi prezime i ime:");
gets(s1);
imeosobe(s1,prezime,ime);
printf("\nPrezime je %s,a ime %s ",prezime,ime);
return 0;
}
我認為主要問題在於if(s [i] ==“”)a = i; 由於姓氏和名字之間必須用空格隔開(1個塊=足以容納1個字母(單擊一次空格)),但是我不確定如何更正它
你需要改變
if(s[i]=="")
至
if(s[i] == ' ') // s[i] is a char, not a string
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.